首次尝试使用Web API并且有点困惑。
我在Web Api中设置了一个基本删除:
public HttpResponseMessage Delete(string id)
{
HttpResponseMessage response = new HttpResponseMessage();
response.ReasonPhrase = "User successfully deleted";
response.StatusCode = HttpStatusCode.OK;
return response;
}
并通过jquery ajax调用它:
deleteUser: function (data) {
var self = this;
$.ajax({
type: "DELETE",
url: urlPath + data.Id,
success: function (response) {
alert("Success: " + response.status + " : " + response.statusText);
},
error: function (response) {
alert("Error: " + response.status + " : " + response.statusText);
}
});
}
这有效... Chrome开发人员工具说StatusCode:200用户已成功删除。
不幸的是,来自ajax成功的警报只是说“成功:未定义:未定义”,并且当在Chrome中破坏成功功能时,响应变量为空白
如何在ajax调用中检索状态代码/消息以显示在屏幕上?
由于
答案 0 :(得分:2)
jQuery的ajax.success回调函数的参数是:
function(PlainObject data, String textStatus, jqXHR jqXHR)
如您所见,第一个参数是原始响应主体。如果您需要HTTP状态代码和文本,请使用jqXHR
(第三个参数)数据:
success: function(data, status, xhr)
{
alert("Success: " + xhr.status + " : " + xhr.statusText);
}