【发布时间】:2014-02-17 19:51:38
【问题描述】:
我有以下电话:
var params={type:"PUT", dataType:"application/json; charset=UTF-8", url:"api/servletpat", data:JSON.stringify(dataObject)};
$.ajax(params)
.done(function(data, status, jqXHR){
successCallback(data);
})
.fail(function(jqXHR, status, thrown){
if (jqXHR.status == 200){
successCallback(null);
}
});
虽然服务器确实发送了 JSON 响应,但 ajax 执行了 jqXHR.status = 200 的 .fail 案例。这意味着返回的数据不可访问。我不能使用“GET”,因为 GET 在 URL 中对提交的对象进行编码,这是不可接受的。 我需要做什么才能读取返回的 JSON 对象? 谢谢...
【问题讨论】:
-
我原以为 POST 将是 GET 之后的下一个逻辑
-
浏览器控制台中的任何错误
-
应该是服务器端错误
-
user2310289,我遵循 API 指南,其中 POST 用于添加新对象,PUT 用于更新现有对象,GET 用于检索对象和元数据。
-
Arun P Johny,Emilio Gort,没有错误服务器或客户端。服务器执行 PUT,并返回正确的返回对象和成功的 HTTP 状态 (200)。唯一的问题是 JQuery 的 ajax 调用将此报告为失败(仍处于成功状态)。