今天解决一个文件上传的问题,代码如下:
@RequestMapping(value = "/upload", method = RequestMethod.POST)
public String doUpload(Role role, @RequestParam("file") MultipartFile file, HttpServletResponse resp) {
if (!file.isEmpty()) {
try {
InputStream in = file.getInputStream();
int temp;
while ((temp = in.read()) != -1) {
System.out.write(temp);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
resp.setContentType("text/html; charset=UTF-8");
JSONObject json = new JSONObject();
json.put("result", "upload ok");
try {
resp.getWriter().println("<textarea>" + json.toString() + "</textarea>");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
注意上面红色的部分“resp.setContentType("text/html; charset=UTF-8");”,之前一直没有注意没有设置返回内容的格式,导致除了IE浏览器之外其他浏览器上传回写全部报错。调试了大半天,真是浪费时间,特此分享一下也算是告诫自己。
分享到:
相关推荐
"Content-Type"指定文件类型,"Content-Disposition"告诉浏览器如何处理数据,通常设置为"attachment",附带一个"filename"参数,指示文件名,这样浏览器会自动触发下载对话框。 4. **Spring框架**: 提到的`...
真实的情况是从这行开始的下一行,这个脚本做两件事:它输出行 Content-type: text/plain,接着开始一个空行;第二,它调用 UNIX 系统时间 date 程序,这样输出日期和时间。 脚本执行后输出应该这样: ``` Content-...
jqGrid是一款基于jQuery开发的插件,它主要用于在网页上实现数据的动态展示和操作。它能够将服务器端的数据以表格的形式展现给用户,并提供了丰富的功能,如数据的增删改查、排序、搜索等。 首先,我们需要理解...
- 方法一:通过在页面上添加一个隐藏的服务器控件(`<input type="hidden" runat="server">`),然后在前后端之间传递值。 - 方法二:在HTML中直接引用后台变量,如`'<%=n%>'`或`'+ <%=n%> +'`,其中`n`是后台变量...
* Content-Type(显示字符集的):用于设定网页的字符集类型。 meta标签可以提供给搜索引擎机器人更多关于网页的信息,从而提高网页在搜索引擎中的排名和曝光率。同时,meta标签也可以用于设定网页的各种参数,如...
* Content-Type(显示字符集的设定):设定网页的字符集。 Meta标签的使用可以帮助搜索引擎更好地理解网页的内容和结构,从而提高网页的搜索排名和用户体验。同时,Meta标签也可以帮助浏览器正确地显示网页内容,...
在处理完请求后,Servlet会将结果返回给客户端,通常是通过HTTP响应的`Content-Type`头指定为`image/*`,让浏览器知道这是个图片资源。 在服务器端配置方面,`web.xml`文件是Java Web应用的部署描述符,用于定义...
4. 关闭连接:当应答结束后,Web 浏览器与 Web 服务器必须断开,以保证其他 Web 浏览器 能够与 Web 服务器建立连接。 在实现 GET 请求的 Web 服务器程序中,可以通过创建 TcpListener 类对象,监听端口 8080;等待...
`layer.open`参数包括`type:2`表示打开一个iframe页面,`area`定义了窗口的尺寸,`title`是窗口标题,`content`是加载的页面路径,`maxmin: true`允许最大化和最小化,`btn`定义了底部按钮,`yes`和`btn2`分别对应...
③ content_type:类型 这个头信息非常重要,它指示HTTP体信息的MIME类型。如:content_type:text/html指示传送的数据是HTML文档。 ④ content_length:长度值 它指示HTTP体信息的长度(字节)。 (4) ...
总结来说,要在Vue项目中使用axios并解决POST请求参数为null的问题,关键在于正确设置`Content-Type`,以及根据后端接口要求选择合适的参数传递方式。同时,确保在发送请求时正确处理错误,以帮助调试和优化应用程序...
5. **生成响应**:根据资源的处理结果,服务器构建HTTP响应,包括状态码(200表示成功,404表示未找到等)、响应头(如Content-Type指明资源类型)和响应体(如HTML内容)。 6. **发送响应**:最后,服务器通过...
与Java和Perl不同,你不必把头埋进100多页的文档中努力学习才可以写出一个象样的程序。只要了解一些基本的语法和语言特色,你就可以开始你的PHP编码之旅了。之后你在编码过程中如果遇到了什么麻烦,还可以再去翻阅...
"Content-Type": 'text/plain', 'charset': 'utf-8', 'Access-Control-Allow-Origin': '*', 'Access-Control-Allow-Methods': 'PUT, POST, GET, DELETE, OPTIONS' }); // 解决跨域问题 // 读取data.txt文件...
2. 在C#脚本中,创建一个`UIImagePickerController`实例,设置其代理为桥接类,并设置其源类型为`UIImagePickerControllerSourceType.PhotoLibrary`来打开相册。 3. 使用`UnityView`的`PresentViewController`方法...
需要设置合适的HTTP请求头,如Content-Type为“image/jpeg”或“image/png”。 3. 错误处理:确保在上传过程中处理可能的网络错误,如超时、无网络等,提供友好的用户反馈。 总结,Unity项目的Android插件开发是...
现在我们将关注第三步,即如何将处理后的图片上传回服务器。 代码中提到的`postData()`函数用于发送POST请求。这个函数接收两个参数,一个是远程服务器的URL,另一个是要POST的数据。在`gptest.php`中,这段代码...