使用ajax向后台请求时,前台报错406 Not Acceptable

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/baidu_29092471/article/details/53027124

使用ajax向后台请求时,前台报错406 Not Acceptable

公司项目里面是springboot,都是集成自动配置好了的,在用xml方式的时候,直接使用@ResponseBody,并不能返回想要的类型,报了406,查了很多,不怎么管用,终于找到方案,小记一下

  • 引入三个jar包(直接贴pom了)
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.8.3</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.8.3</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>2.8.3</version>
        </dependency>
  • spring配置文件里面配置bean
    <!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->
    <bean id="mappingJacksonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
        <property name="supportedMediaTypes">
            <list>
                <value>text/html;charset=UTF-8</value>
            </list>
        </property>
    </bean>
    <!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->
    <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
        <property name="messageConverters">
            <list>
                <ref bean="mappingJacksonHttpMessageConverter" /><!-- json转换器 -->
            </list>
        </property>
    </bean>
  • 后台controller上的相应ajax请求方法上正常添加@ResponseBody,就能返回想要了类型的返回值了

猜你喜欢

转载自blog.csdn.net/baidu_29092471/article/details/53027124
今日推荐