我正在使用$.ajax
来完成发布方法
$(function(){
$("#postMembers").click(function(){
let member ={
firstName: "khookina",
lastName : "khooak",
age:1,
sex:"female",
duty:"undefined",
dailyJeton:2
}
$.ajax({
type: "post",
url: "http://localhost:8080/RCP2/members",
data: member,
dataType: "application/json",
success: function (response) {
alert("success");
},
error: function(error){
alert("error");
}
});
});
我的休息控制器是这个
@PostMapping(consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE}, produces = {MediaType.APPLICATION_JSON_UTF8_VALUE})
public String createMembers(Member member) {
if (member.hasError()) {
throw new CreatePersonException("All the fields must be filled properly in order to create a new member.");
}
if (personDao.createMember(member)) {
return "Member: " + member.getFirstName() + " " + member.getLastName() + " successfully created.";
}
return "couldn't create member, please try again later.";
}
我在网页上有一个执行此ajax post方法的创建成员按钮,当我按该按钮时,一切正常,成员信息发送到rest控制器,它被创建(100%工作)并返回{{ ajax post方法的1}}和{"readyState":4 status":200, "statusText":"parsererror"}
被调用
出什么问题了?
这是我使用Ajax和javascript的第一天,我不太了解发生了什么。
预先感谢
PS我曾尝试更改数据类型error: function(error)
,text json
和其他类似问题中提出的建议,但是它们对我没有用,所以我决定自己提出一个问题
答案 0 :(得分:2)
尝试更改
数据:JSON.stringify(member),您将在结果中获得成功的响应/
答案 1 :(得分:0)