gpt4 book ai didi

javascript - 在 angularjs 中访问自定义 http 响应 header

转载 作者:可可西里 更新时间:2023-11-01 02:34:06 25 4
gpt4 key购买 nike

Response from server

我正在尝试访问 header “error-detail”,正如您在浏览器网络检查器(上面的链接)中看到的那样, header 被返回。在服务器方面,我还将自定义 header 添加到“Access-Control-Expose-Headers”以允许跨域请求,因为这被建议用于解决其他问题。

下面是对服务器的请求以及成功/错误回调。

this.signon = function (request, onComplete, onError) {
console.log("Calling server with 'login' request...");

return $http.post("http://localhost:8080/markit-war/services/rest/UserService/login/", request)
.then(onComplete, onError);
};

var onLookupComplete = function(response) {
if (response.data.username)
{
//If user is returned, redirect to the dashboard.
$location.path('/dashboard');
}

$scope.username = response.data.username;
};

var onError = function(response) {
$scope.error = "Ooops, something went wrong..";
console.log('error-detail: ' + response.headers('error-detail'));
};

当我尝试访问响应 header 时,如下所示:

    console.log(response.headers());
console.log('error-detail: ' + response.headers('error-detail'));

这只会输出:内容类型:“应用程序/json”错误详细信息:空

错误详细信息 header 未映射到响应对象是否有原因?

最佳答案

我认为您走在正确的轨道上。要访问自定义 header ,您的服务器需要设置这个特殊的 Access-Control-Expose-Headers header ,否则您的浏览器将只允许访问 Mozilla docs 中列出的 6 个预定义 header 值。 .

在您的屏幕截图中,响应中不存在此类 header 。您应该查看此 cors header 的后端,以便它也出现在响应中。

关于javascript - 在 angularjs 中访问自定义 http 响应 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40852893/

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