First of all, note that @ requestbody accepts the JSON string
so write this
dataType:"json",
contentType: 'application/json',
data: JSON.stringify(data.field),
Instead of @ requestbody, you can directly receive the JSON type
dataType:"json",
data: data.field,
The situation of not using @ requestbody
front end page
$.ajax({
url: "http://localhost:8081/role//saveOrUpdate",
method:"post",
dataType:"json",
// contentType: 'application/json',
data: data.field,
success(data){
console.log("======================")
console.log(data.field)
if(data.code == 200){
layer.msg('add success', function () {
window.location = 'list.html';
});
}
},
error(data){
console.log(data)
if(data.code != 200){
layer.msg(data);
}
}
});
Back end:
@PostMapping("/saveOrUpdate")
public Result saveOrUpdate(Roles roles){
System.out.println(roles);
boolean saveOrUpdate = roleService.saveOrUpdate(roles);
if(saveOrUpdate == true)
return Result.succ(null);
else
return Result.fail("failed to add");
}
Using @ requestbody
front end:
$.ajax({
url: "http://localhost:8081/role//saveOrUpdate",
method:"post",
dataType:"json",
contentType: 'application/json',
data: JSON.stringify(data.field),
success(data){
console.log("======================")
console.log(data.field)
if(data.code == 200){
layer.msg('add success', function () {
window.location = 'list.html';
});
}
},
error(data){
console.log(data)
if(data.code != 200){
layer.msg(data);
}
}
});
back-end
@PostMapping("/saveOrUpdate")
public Result saveOrUpdate(@RequestBody Roles roles){
System.out.println(roles);
boolean saveOrUpdate = roleService.saveOrUpdate(roles);
if(saveOrUpdate == true)
return Result.succ(null);
else
return Result.fail("failed to add");
}