gpt4 book ai didi

javascript - 获取状态 -1 而不是 401 Angularjs

转载 作者:可可西里 更新时间:2023-11-01 15:29:01 24 4
gpt4 key购买 nike

我正在尝试从服务器获取响应。该函数看起来是这样的:

function getOverview() {
var req = {
method: 'GET',
url: base,
headers: {
'authorization': 'Bearer ' + GottenTokens.getSessionToken()
}
};

return $http(req).then(
function successCallback(response) {
return response;
}, function errorCallback(response) {
console.log(response);
return response;
});
}

当状态为 200 时,没有问题,它会返回状态为 200 的良好响应。但是...当状态为 401 时,它会返回状态为 -1 的响应:

Object {data: null, status: -1, config: Object, statusText: ""}

我在 postman 中尝试过,我看到状态为 401,在浏览器中也是如此:

XMLHttpRequest cannot load http://localhost:5000/overview. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. The response had HTTP status code 401.

这意味着浏览器和 postman 从服务器获取状态,但它不会进入 Angularjs。我正在尝试这篇文章:Capture Http 401但这对我没有帮助。我在“工厂”中具有该功能。

对了,服务端是用akka写的。不知道有没有关系。之前是在 NodeJS 中,我没有遇到任何问题。因为它在 akka 中,所以我无法在 Angularjs 中获取状态。

有人能帮帮我吗?

最佳答案

进行跨站请求时,服务器必须向所有响应添加一个有效的 CORS header 。这包括 401 等错误响应。

确保您可以在 401 响应中看到 "Access-Control-Allow-Origin" header ,它很可能丢失了。

关于javascript - 获取状态 -1 而不是 401 Angularjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36576380/

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