解决 ie 返回json提示下载 ResponseEntity方法

js 配合java  springMVC后台,成功后返回消息,chrom ff都正常,只有IE提交后返回的JSON提示下载,查看类型

application/json  google后发现原来是IE不支持该标识,所以一律作为文件下载

网上一般有三种方法:

           一是手工指定response

     二是修改配置文件(但本人一直为试验成功)

           三是不再用 @ResponseBody,改用ResponseEntity<T>      这种方法成功率最高,但是修改起来比较麻烦,如果你有很多地方已经用了@ResponseBody的话。

 

我采用的是第三种

             ResponseEntity<T>   T类型可以为任意,但是注意与返回相同,修改后返回类型变为

          键 值
          Content-Type text/plain;charset=UTF-8 

             IE正常识别 ,解决

@RequestMapping(value = "/")
public ResponseEntity<Map<String, Object>>
updateUserPic(HttpSession session,HttpServletResponse response) throws IOException {
Map<String, Object> map = new HashMap<String, Object>();


HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.TEXT_PLAIN);

return new ResponseEntity<Map<String, Object>>(map, headers, HttpStatus.OK);

}

posted @ 2014-09-21 16:46  all_forone  阅读(1731)  评论(0编辑  收藏  举报