406
状态码406:HTTP协议状态码的一种,表示无法使用请求的内容特性来响应请求的网页。说白了就是后台的返回结果前台无法解析就报406错误。
示例代码中请求代码,后台代码均正常,且有返回信息。如下图:
$.ajax({
url:'http://localhost:8080/findDsrwByDsrwid',
type : 'post',
data :{
id : cztj
},
dataType:'json',
}).success(function(result){
}
那我们来看看网页状态:
状态码:406,请求头(request headers)中看到请求信息是json格式,响应头(response Hraders)中却发现返回信息的格式是“text/html”,前台无法解析,需将结果转换成json格式返回给前台。
解决方案:
导入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解析,底层原因博主也不是很懂,需要多看源码,这里提供另外一篇博文,希望有所帮助。
https://blog.csdn.net/taotoxht/article/details/54136890?locationNum=4&fps=1
结果展示:
相关阅读
MyEclipse运行JAVA Web时出现HTTP Status 500错误
今天用MyEclipse运行前几个月前写的一个系统,出现了HTTP Status 500错误。这个系统是用SSH框架写的,数据库用的是MYSQL。造成这个错
HTTP.sys 远程命令执行漏洞http://www.tiaozhanziwo.com/archives/765.html
http和https有什么区别?网站有没有必要启用https
最近在浏览文章的时候发现,很多站长都在纠结网站到底要不要做https的问题。作为个人站长,也一直关注着这块。最近查阅了很多资料,对h
SSL(Secure Socket Layer 安全套接层)是基于HTTPS下的一个协议加密层,最初是由网景公司(Netscape)研发,后被IETF(The Internet Enginee
Linux报错ping: https://www.baidu.com: Name or serv
问题: [root@localhost104 softwares]# ping https://www.baidu.comping: https://www.baidu.com: Name or service not known没有