问题描述
- SpringMvc返回JSON在IE下下载的问题,配好了,一使用拦截器的话在IE下就又成下载了
-
用的maven+springMVC+spring+mybatis,
搭框架的时候在spring-mvc.xml里配了关于IE的JSON配置,本来是正常的,但是在加了拦截器的配置之后,这个就没有效果了,IE下返回的JSON又成下载文件了。怀疑是通过拦截器的适合 返回的contenttype又变成默认了。不知道 有什么解决办法。
spring用的4.1.7.这是关于返回JSON的配置,在spring-mvc.xml
<!-- 配置SpringMVC @ResponseBody和@RequestBody注解 --> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"> <property name="messageConverters"> <list> <ref bean="stringHttpMessageConverter"/> <ref bean="jsonHttpMessageConverter" /> </list> </property> </bean> <!-- JSON Converter 保证 JSON能正常转换 --> <bean id="jsonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/html; charset=UTF-8</value> <value>application/json;charset=UTF-8</value> </list> </property> </bean> <!-- String Converter 保证正常输出字符串 --> <bean id="stringHttpMessageConverter" class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/plain;charset=UTF-8</value> <value>apolication/json; charset=UTF-8</value> </list> </property> </bean>
这是拦截器相关配置 在spring-mvc.xml
<!-- 启动SpringMVC的注解功能,它会自动注册HandlerMapping、HandlerAdapter、ExceptionResolver的相关实例 <mvc:annotation-driven /> <mvc:default-servlet-handler /> --> <!-- 拦截器配置 <mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/**"/> <bean class="com.rv.core.base.BaseInterceptor"> <property name="allowUrls"> <list> --> <!-- 如果请求中包含以下路径,则不进行拦截 <value>/login</value> <value>/jsp</value> <value>/js</value> <value>/css</value> <value>/image</value> <value>/images</value> </list> </property> </bean> </mvc:interceptor> </mvc:interceptors> -->
解决方案
使用text/html试试
时间: 2024-12-01 16:46:01