gpt4 book ai didi

jquery - Web API和jQuery ajax没有收到正确的错误

转载 作者:行者123 更新时间:2023-12-03 08:32:52 24 4
gpt4 key购买 nike

我正在尝试使用jQuery ajax调用Web api方法。使用非常基本的方法,我无法获得ajax调用来返回正确的响应。我尝试了多种方式,认为这可能是回应,但没有运气。

这是我的代码:

Web API

 // POST api/token
public Token Post(User user)
{
throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Unauthorized));
}

jQuery
  $.ajax({
url: http://myUrl/api/token',
type: 'POST',
dataType: 'json',
data: data,
success: function () {
},
error: function (request, status, error) {
alert(request.status);
//request.status is always 0, I am expecting 401
}
});

我也尝试使用:
 .done(function() {
})
.fail(function(data) {
//status code is always 0 instead of expected 401
});

和:
 statusCode: {
401: function () {
//Never gets hit
},
}

当我在FF中使用Firebug检查响应时,我在控制台中收到了正确的响应:
 POST http://myUrl/api/token 401 Unauthorized

因此,饱和状态代码始终为0或从未命中401 statusCode:。我在做什么错和/或为了正确捕获客户端上的401错误需要做什么?

最佳答案

我终于找到了问题。 $ .ajax不喜欢跨域调用。将“Access-Control-Allow-Origin:*”添加到我的REST POST方法的响应 header 后,便可以获取正确的数据。

关于jquery - Web API和jQuery ajax没有收到正确的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18550072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com