我正在服务器端实现Jersy服务,在POST方法上返回201。但是在响应的jQuery中,总是调用错误函数。
我正在检查localhost上的应用程序并从Windows IIS启动该页面。
我所做的一切似乎都没有帮助。
Jersy Java代码:
@POST
@Produces({ MediaType.APPLICATION_JSON})
public Response createUser(InputStream is) throws APIException , Exception
{
ObjectMapper mapper = new ObjectMapper();
UserDTO userDTO = mapper.readValue(is, UserDTO.class);
UserDTO createUser = userFacade.createUser(userDTO);
return Response.status(Response.Status.CREATED).entity(userDTO).build();
}
Jquery代码:
function createUser () {
var data = formToJSON();
debugger;
$.ajax({
type: 'POST',
url: 'http://localhost:8082/wfm/api/rest/users',
data: formToJSON(),
contentType: 'application/json',
dataType: "json",
success: function(){
alert('success');
},
error: function(){
alert('error' + message);
}
});
}
function formToJSON() {
return JSON.stringify({
"id": "",
"firstName": $('#signUp_firstName').val(),
"lastName": $('#signUp_lastName').val(),
"email": $('#signUp_email').val(),
"password": $('#signUp_password').val()
});
}
退回Json:
{
"id": "1",
"firstName": "Avi",
"lastName": "lastname",
"email": "user@gmail.com",
"password": "4321rewq"
}
返回页眉:
Content-Length → 102
Content-Type → application/json; charset=UTF-8
Date → Tue, 29 Dec 2015 20:04:38 GMT
Server → Jetty(9.2.6.v20141205)
X-Application-Context → application:8082
答案 0 :(得分:0)
我发现了这个问题。
我在jquery代码中有错误:
function createUser () {
var data = formToJSON();
debugger;
$.ajax({
type: 'POST',
url: 'http://localhost:8082/wfm/api/rest/users',
data: formToJSON(),
contentType: 'application/json',
dataType: "json",
success: function(){
alert('success');
},
error: function(){
alert('error' + message);
}
});
}
在警报的错误功能中,我使用了未定义的参数'message'。当我删除'message'参数时。
还在国际资源管理器中运行页面而不是Chrome 问题解决了。