如果在Controller中请求参数没有用@RequrestBody注解
@PostMapping("/ajax1")
@ResponeBody
public String service1(SwaggerReq swaggerReq){
return "{\"code\":0}";
}
ajax调用方式,不需要加dataType和contentType,代码如下
$.ajax({
url:'/myService/ajax1',
type:'POST',
data:{id,'123',name:'dst'},
success:function(res){
console.log(res)
}
})
如果在Controller中请求参数用@RequrestBody注解
@PostMapping("/ajax1")
@ResponeBody
public String service1(@RequestBody SwaggerReq swaggerReq){
return "{\"code\":0}";
}
ajax调用方式,代码如下
$.ajax({
url:'/myService/ajax1',
type:'POST',
dataType:'json',
contentType:'application/json',
data:JSON.stringify({id,'123',name:'dst'}),
success:function(res){
console.log(res)
}
})
使用@RequestBody的AJAX调用
本文详细对比了在Spring MVC Controller中使用与不使用@RequestBody注解时,AJAX调用的不同处理方式。未使用@RequestBody时,直接通过data属性传递参数;使用@RequestBody时,需设置dataType为'json',contentType为'application/json',并使用JSON.stringify将数据转换为JSON字符串。
1804

被折叠的 条评论
为什么被折叠?



