Spring MVC关于IE对application/json的content-type不支持解决方案---duang 解决了

在现代的web开发中,我们为了用户的体验广泛的使用异步开发,用户看不见后台的实际执行情况,只关心结果,所以良好的提示消息决定了系统对用户的态度,所以要开发一套标准的提示消息,我选择了JSON,但是在实际开发过程中,会发现IE不支持application/json类型,所以我也在网上查找了好多同样的问题,但是大部分说法都是注册注册表,但是我门发布系统又不能让每个用户都注册一下注册表,这显然很不合理,所以我发现,只要修改返回的内容的类型(ContentType)即可解决问题。

1,默认情况下,我们会使用Spring MVC自带的注解@ResponseBody来返回处理结果,但是@ResponseBody默认将结果处理为application/json,这就导致了IE的无法解析,而是直接提示下载一个"文件名.json"的文件,让用户很不可以理解,所以为了让用户有个统一并且良好的体验,要使用下面的方法二。

2,使用response.setContentType("text/html;charset=UTF-8");response.getWriter().print(map_obj_result.get("result"));来代替系统默认的application/json,这样就可以完美解决IE下不支持JSON的问题了。

在多浏览器兼容性问题上还有很多路要走,还有很多问题要解决,所以保证一颗淡定的心,你就可以对问题冷静,其实问题并不是很难,难的是如何保证一颗冷静的心。

时间: 2024-10-08 10:08:41

Spring MVC关于IE对application/json的content-type不支持解决方案---duang 解决了的相关文章

spring mvc接收ajax提交的JSON数据,并反序列化为对象

需求:spring mvc接收ajax提交的JSON数据,并反序列化为对象,代码如下: 前台JS代码: //属性要与带转化的对象属性对应 var param={name:'语文',price:16}; $.ajax({ url: "/book/adddata", type: "POST", dataType: 'json', //必需设定,后台@RequestBody会根据它做数据反序列化 contentType:"application/json&quo

Spring MVC全局异常后返回JSON异常数据

Spring MVC全局异常后返回JSON异常数据 问题: 当前项目是作为手机APP后台支持,使用spring mvc + mybaits + shiro进行开发.后台服务与手机端交互是发送JSON数据.如果后台发生异常,会直接返回异常页面,显示异常内容,如果是404请求不到资源或者500这类服务器的问题,可能会导致返回404和500异常页面,手机端的处理就非常麻烦,为了解决这个问题,就需要做全局的异常处理. 解决方案: (1)自定义或者使用spring自带的各种异常处理器 例如spring基于

判断JSON是否为空 (用spring mvc @ResponseBody 自动返回的json串 )

判断JSON是否为空 (用spring mvc @ResponseBody 自动返回的json串 ) 知识分类:EXTJS  spring mvc json 记录时间: 20150708 简单描述:用json.length 属性长度来判断是否为空,在此过程中spring mvc 自动返回的json串是 字符串的类型,所以用.length的方式返回的则是字符串的长度(一般空的JSON 在此处返回的长度应为3),并不是数组的长度,在EXTJS中用Ext.decode(json); 则可以将字符串js

spring mvc 用freemarker实现/user/edit?id=${id}=${type} 的替换

java 中实现/user/edit?id=${id}=${type} 的替换; 引入包: freemark.jar  ,以及 类代码如下: public class FreeMarkerTextTemplateUtils { public static String processTextTemplateToString(String textTemplate, Object model) throws IOException, TemplateException { Configuratio

spring mvc出现 Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'endtime'

在使用spring mvc中,绑定页面传递时间字符串数据给Date类型是出错: Failed to convert property value of type [java.lang.String] to required type [java.util.Date] for property 'expert.birthdate'; nested exception is java.lang.IllegalArgumentException: Cannot convert value of typ

org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json;charset=UTF-8' not supported或其他Content type不支持处理

很久没从头到尾搭框架,今天搭的过程中,springmvc controller方法入参用@RequestBody自动绑定参数时一直提示各种 not supported 排查问题有两个解决路径: 1)使用post协议提交时,请检查Content type类型,如: $.ajax({ type: "POST", contentType: "application/json;charset=UTF-8", url: "/reg", data: JSON

Spring MVC普通类或工具类中调用service报空空指针的解决办法(调用service报java.lang.NullPointerException)

当我们在非Controller类中应用service的方法是会报空指针,如图: 这是因为Spring MVC普通类或工具类中调用service报空null的解决办法(调用service报java.lang.NullPointerException) 按上述步骤解决完自己的工具类后,你会发现项目运行后仍然报空指针此时你需要在applicationContext.xml 配置文件中添加一行配置文件 如图: 对自己工具类所在的包进行注解扫描,使Spring能够识别自己上面所配置的注解 原文地址:htt

Spring MVC登录注册以及转换json数据

项目结构; 代码如下: BookController package com.mstf.controller; import javax.servlet.http.HttpServletResponse; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.codehaus.jackson.map.ObjectMapper; import com.mstf.

160506、Spring mvc新手入门(11)-返回json 字符串的其他方式

Spring MVC返回 json字符串的方式有很多种方法,这里介绍最简单,也是最常使用的两种方式 一.使用  PrintWriter printWriter  直接输出字符串到返回结果中    不需要任何xml文件配置 1 2 3 4 5 6 7 8 9 //返回给前台一个字符串  @RequestMapping(params = "method=getJson1")  public void getJson(@RequestParam("userid") Str