我使用AngularJS(1.6.1)并创建了一个AuhthorizationIntercepter。
当我将local_storage中的access_token添加到' Auhtorization'标题它没有在Chrome中更新。似乎Chrome已经被追逐了。请求
令牌在本地存储中更改,但当Chrome执行实际请求时,它始终使用相同的令牌(使用Dev Tools,Postman和Fiddler进行检查......)
this.request = function (request) {
request.headers = request.headers || {};
if (window.localStorage.getItem('access_token') !== '') {
alert("Adding header in request \n \n" + window.localStorage.getItem('access_token'));
request.headers.Authorization = 'Bearer ' + window.localStorage.getItem('access_token');
}
return request;
};
我尝试了以下内容:
this.request = function (request) {
request.headers = request.headers || {};
if (window.localStorage.getItem('access_token') !== '') {
//alert("Adding header in request \n \n" + window.localStorage.getItem('access_token'));
request.headers.TEST= 'Bearer ' + window.localStorage.getItem('access_token');
}
return request;
};
现在我不再设置授权标题了,而是“测试”标题。报头中。
测试标题现在具有正确的' access_token'但是仍然有一个'#hhthorization'头?我不知道它来自哪里。它无法编程添加标题。
我也不知道Chrome从哪里获取此访问令牌。这是昨天的一个。它不在请求对象中...... 此外,在使用Chrome设置删除域的每个已保存信息后,Chrome仍然设法使用旧令牌。
如果我重新安装Chrome,错误就会解决。直到它再次发生...... Firefox,Edge和Internet Explorer中不存在该错误
有人有类似的错误吗? 我变得绝望了
诚恳, 布莱希特
答案 0 :(得分:0)
似乎我通过使用工厂代替服务来解决它。
编辑:这个问题已经过去了5个月,经过5个月的突然之后又停止了工作。相同的行为:更正本地存储中的access_token,并更正请求中添加的令牌(js代码),但在实际的XHR调用中发送错误的令牌。重新安装Chrome后问题再次得到解决......