ajax异步请求 后台用Spring的@RequestBody接受java对象
今天遇到错误代码:415不支持的媒体类型。Failed to load resource: the server responded with a status of 415 (Unsupported Media Type)1以前都没遇到这个情况,今天突然遇到,就花了点时间测试整理下1.首先我们要知道@RequestBody 是用来干嘛的:接受一个JSON’字符串’注意是 字符串 不是JSON对象
今天遇到错误代码:415不支持的媒体类型。
Failed to load resource: the server responded with a status of 415 (Unsupported Media Type)
1
以前都没遇到这个情况,今天突然遇到,就花了点时间测试整理下
1.首先我们要知道@RequestBody 是用来干嘛的:接受一个JSON’字符串’注意是 字符串 不是JSON对象,如果有与之对应的java实体,会帮助自动转化成java对象。
下面是我遇到的415的错误代码:
前台:一个非常简单的ajax
var student = {
"name":1,
"age":2,
"score":3
}
$.ajax({
url:"student/test/delStudentByPrimaryKey.action",
type:'POST',
dataType:'json',//json 返回值类型
data: JSON.stringify(student),//转化为json字符串
success:function(data){
}
});
后台:一个非常简单的接口
@RequestMapping(value = "/delStudentByPrimaryKey")
void deleteByPrimaryKey(@RequestBody Student student){
System.out.println(student);
}
原本我也认为这样没问题,也按照要求转成JSON字符串了
但是爆炸了:依然415。如下 这是为什么呢???经查是因为下图红框的请求类型不对,默认是图中类型
然后前台改为:
把context-Type改为application/json;charset=UTF-8
告诉后台 我发送的是JSON字符串,并且后台用@RequestBody接受它,
你就要帮我把他转成对应的实体对象。
$.ajax({
url:"student/test/delStudentByPrimaryKey.action",
contentType:"application/json;charset=UTF-8",
type:'POST',
dataType:'json',//json 返回值类型
data: JSON.stringify(student),//转化为json字符串
success:function(data){
}
});
成功:
————————————————
原文链接:https://blog.csdn.net/weixin_38362455/article/details/78936964
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)