我发布到我的数据库(使用GAE的上下文,以及作为DAO的Objectify)并且它正确发布(并且后端返回202的响应),但是,在Ajax下它没有调用“成功”块(即使在下面的方法中,即使它正确发布,它也会调用alert(“error1”))。 Ajax的源代码说,当状态在200到300之间时,Post应该调用成功块。任何想法为什么它不起作用?任何帮助都会很棒!
function userExist() {
var rootUrl = "http://localhost:8888/api/";
function loginToJSON() {
return JSON.stringify({
"username": $('#username').val(),
"password": $('#password').val()
});
}
//System.out.println(loginToJSON());
$.ajax({
type: 'POST',
contentType: 'application/json',
url: rootUrl + 'userLogin',
dataType: "json",
data: loginToJSON(),
success: function(data, status, jqXHR) {
alert("success");
},
error: function(jqXHR, status, errorThrown){
alert("error1");
}
});
}
相关的java后端是
@POST
public Response login(Login l) {
if (loginService.checkCred(l)) {
return Response.status(202).build();
} else {
return Response.status(403).build();
}
}