Http状态码406(Not Acceptable) 错误问题解决方法
状态码406:HTTP协议状态码的一种(4xx表示客户端的问题),表示客户端无法解析服务端返回的内容。说白了就是后台的返回结果前台无法解析就报406错误。
示例代码中请求代码,后台代码均正常,且有返回信息。如下图:
$.ajax({url:'http://localhost:8080/findDsrwByDsrwid',type : 'post',data :{id : cztj},dataType:'json',}).success(function(result){}
那我们来看看网页状态:
状态码:406,请求头(Request Headers)中看到Accept优先是application/json格式,而响应头(Response Hraders)中却发现返回信息的格式是“text/html”,前台无法解析,需将结果转换成json格式返回给前台。
解决方案:
jackson开源工具(springMVC天然支持)
导入jackson-core和jackson-mapper-asl的依赖包,如果你是maven工程,在pom加入
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core --><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.1.4</version></dependency><!-- https://mvnrepository.com/artifact/org.codehaus.jackson/jackson-mapper-asl --><dependency><groupId>org.codehaus.jackson</groupId><artifactId>jackson-mapper-asl</artifactId><version>1.9.12</version></dependency>
此时还需要关注springMVC的一个配置,具体原因请看原理解析。
原理解析:
为什么只要导入jar就好了呢?是因为spring mvc 配置了 <mvc:annotation-driver/> 后 ,如果classpath 里面包含jackson 包,则自动注册MappingJackson2HttpMessageConverter,从而支持json 输出。
这是springMVC中的一句配置
<!-- 能支持springmvc更高级的一些功能,JSR303,快捷的ajax -->
<mvc:annotation-driven/>
且annotation-driver是被AnnotationDrivenBeanDefinitionParser解析,这里提供另外一篇博文,希望有所帮助。
spring mvc jackson 支持原理分析_taotoxht的专栏-CSDN博客_jackson 原理
结果展示:
————————————————————————————————————————————————————
2020.01.30:,今天搭了另外一个项目的环境,项目依赖中已有jackson-annotations-*.jar,jackson-core-.jar,jackson-databind-.jar 包,打开注解驱动<mvc:annotation-driven>依然报406,如果有同学试了以上方案不行的话,可以试着尝试fastjson替代jackson,具体是:
引入jar包:
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson --><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.58</version></dependency>
注解驱动<mvc:annotation-driven>配置为:
<mvc:annotation-driven><mvc:message-converters register-defaults="true"><!-- 配置Fastjson支持 --><bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter"><property name="supportedMediaTypes"><list><value>application/json</value><value>text/html;charset=UTF-8</value></list></property>
<!-- <property name="features"><list><value>WriteMapNullValue</value><value>QuoteFieldNames</value></list></property>--></bean></mvc:message-converters></mvc:annotation-driven>
结果:
Http状态码406(Not Acceptable) 错误问题解决方法相关推荐
- 【已解决】(uni-app)IOS 端 H5 应用无法发起请求,请求状态码为0,错误描述为request:fail
[已解决](uni-app)IOS 端 H5 应用无法发起请求,请求状态码为0,错误描述为request:fail 目录 [已解决](uni-app)IOS 端 H5 应用无法发起请求,请求状态码为0 ...
- 异地二维码收款被风控的问题解决方法
异地二维码收款被风控的问题解决方法 1.直连通道,服务商分账 普通服务商添加特约商户,然后走服务商分账模式.不要申请调低费率,如果调低就会被认为是线下场景商户,不能异地收款. 2.间连通道,商户池商编 ...
- 绝地求生大逃杀错误服务器维护,绝地求生 Bad Service Version 错误问题解决方法
绝地求生 Bad Service Version 错误问题解决方法 2017-11-13 15:53:01来源:游戏下载编辑:评论(0) <绝地求生大逃杀>提示Bad Service Ve ...
- linux ftp 550 下载,linux ftp服务器上传文件夹时提示550错误问题解决方法
linux ftp服务器上传文件夹时提示550错误问题解决方法 标签: linux ftp服务器 550 中文文件夹上传错误 问题 分类: 计算机 2010-11-06 22:47 前几天在实验室搭配 ...
- HTTP 499 状态码 nginx下 499错误
日志记录中HTTP状态码出现499错误有多种情况,我遇到的一种情况是nginx反代到一个永远打不开的后端,就这样了,日志状态记录是499.发送字节数是0. 老是有用户反映网站系统时好时坏,因为线上的产 ...
- SpringMVC使用@ResponseBody直接返回json对象报HTTP Status 406 – Not Acceptable错误
SpringMVC中使用@ResponseBody返回对象,出现406 The target resource does not have a current representation that ...
- springboot 2.x 406(Not Acceptable)错误处理
springboot的406处理 -问题复现: 提供第三方的接口,接口形式已经固定,是.html后缀结尾的,访问时出现406 -原因分析:springmvc返回的格式转化错误,期望返回json数据,但 ...
- java项目报错405_405报错是什么原因_状态码405是什么错误
今天网站遇到一个问题:http post请求网页会出现405,分析了下原因: 是因为Apache.IIS.Nginx等绝大多数web服务器,都不允许静态文件响应POST请求. 下面是解决方案:将pos ...
- 【转】20个Cydia常见错误问题解决方法汇总
对于已经越狱的用户来说,经常会使用Cydia来安装一些酷炫或实用插件,但是有时候它总是会出现一些问题,以下收集了在Cydia经常遇到的问题,供大家参考: 一.主屏幕没有 Cydia 图标 1.设备需已 ...
- 文件一直处于修改状态 git checkout 无法还原的问题解决方法
问题描述 最近在 RT-Thread 时,使用 Git 回退版本验证问题,后来 git pull 拉取最新代码后,发现里面有几个文件,一直为[修改]状态,并且无法还原,git checkout xxx ...
最新文章
- 不展现报表实现对报表的打印导出
- LayoutInflater作用及使用
- unbuntu安装阿里云
- 多大的计算机科学,科学网—大家计算机的屏幕尺寸都是多大的? - 刘洋的博文...
- 树莓派4b自带wifi_树莓派4B日志二:WiFi远程配置与换源
- 计算机基础知识试卷并附答案,计算机基础知识_试卷及答案.doc
- 像excel一样规律填充(三)
- iPhone清理喇叭灰尘_手机喇叭用久了灰尘多,与其经常换手机,不如自己动手清理...
- css grid 自动高度_CSS Grid构建圣杯布局
- yoga710怎么进入bios_联想yoga进入bios
- dcpb连接mysql_MySQL Cluster 7.3.7+CentOS7集群配置入门 MySQL双管理节点配置入门
- 统计学 参数估计 之 总体均值的估计
- 「JCVI教程」使用JCVI进行基因组共线性分析(上)
- arduino期末考试题
- 计算机设置曲线超高方法,32604007曲线外轨超高设置方法及计算公式.pdf
- 学习OpenCV:滤镜系列(8)——素描
- 通达OA工作流-流程设计
- java分页(java分页插件pagehelper)
- String是基本数据类型吗?
- 每日一诗词 —— 忆秦娥·娄山关
热门文章
- 开题报告(3.研究的思路、过程与方法)
- 内网ip和外网ip区别
- 信息收集及漏洞利用--安全(四)
- admi后台 vue_vue-ele-admin后台管理系统框架__布局
- LabVIEW编程LabVIEW开发 施耐德
- ThoughtWorks笔试题汇总
- ego-planner论文阅读笔记
- React 引用 ant 组件 使用 react-custom-scrollbars美化(隐藏)滚动条
- 【CPM同步】连续相位调制(CPM)通信调制方法的载波同步和定时同步研究和matlab仿真
- 【JZOJ A组】东风谷早苗