小服务程序代码
request.getparameter("fname") //I can't able to get value.
HTML代码
<html>
<head>
<title>File Uploading Form</title>
</head>
<body>
<h3>File Upload:</h3>
Select a file to upload: <br />
<form action="UploadServlet" method="post"
enctype="multipart/form-data">
<input type="text" name="fname" size="50" />
<input type="file" name="file" size="50" />
<input type="submit" value="Upload File" />
</form>
</body>
</html>
我的问题是:如何通过
fname
多部分发布请求中的参数?
最佳答案
简答:您会找到 fname
在 Part
s 的请求。
长答案:对于多部分类型的请求,即使是简单的 <input type="text">
字段值放置在部分中。您将不得不遍历 Part
HttpServletRequest.getParts()
返回的对象并根据他们的name
处理他们属性(property):
for( Part p : request.getParts() ) {
if( "fname".equals(p.getName()) ) {
...
}
else if( "file".equals(p.getName()) ) {
...
}
}
更复杂的是,该部分的内容为
InputStream
- Part.getInputStream()
- 所以你必须做一些转换流 → byte[]
→ String
以获得值(value)。
关于jsp - 如何在多部分发布请求中传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20394292/