使用SpringMVC前台发送数据时得到400或415错误! - Go语言中文社区

使用SpringMVC前台发送数据时得到400或415错误!


今天在项目中使用SpringMVC框架,想从前台往后台发送json格式的数据。但是发送失败,查看开发者工具栏。

分别得到了两个错误码:400、415

查询错误码详情了解到

ajax请求后台数据时报 HTTP 400 错误 - 请求无效 (Bad request);出现这个请求无效报错说明请求没有进入到后台服务里;
原因:1)前端提交数据的字段名称或者是字段类型和后台的实体类不一致,导致无法封装;
          2)前端提交的到后台的数据应该是json字符串类型,而前端没有将对象转化为字符串类型;
解决方案:
1)对照字段名称,类型保证一致性

2)使用stringify将前端传递的对象转化为字符串    data: JSON.stringify(param)  ;

ajax请求后台数据报 HTTP 415 错误 - 服务器无法处理请求附带的媒体格式 (Unsupported Media Type);

1)原因可能有springmvc没有添加配置,注解;

2)pom.xml没有jackson包的引用;

3)Ajax请求时没有设置Content-Type为application/json;charset=utf-8

4)发送请求内容没有发送json字符串,而是以json格式数据发送的

解决方案:

1)检查springMVC配置文件是否开启了注解


2)maven引入jackson包:

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.7.0</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.7.0</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.13</version>
</dependency>

3)设置contentType为 

4)发送数据的格式



最后注意:不要将二者搞混,要不然不是得到400就是得到415



下面引入一个链接:Json对象和Json字符串的区别

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/huang_xin2016/article/details/80403085
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-03-01 19:38:59
  • 阅读 ( 1215 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢