localStorage.getItem('token')的行为很奇怪。

问题描述 投票:0回答:1

我有这段代码,应该返回连接用户的详细信息。问题是,当我发送请求时,token似乎不正确,而且从localStorage中得到的token值被删除了。

const tokenHeader = new HttpHeaders({ Authorization: 'Bearer ' + localStorage.getItem('token')});
return this.http.get(AppSettings.URL, { headers: tokenHeader });

问题是我的token是正确的,如果我硬编码从localStorage.getItem('token')中得到的值,它就能正常工作。 例如

const tokenHeader = new HttpHeaders({ Authorization: 'Bearer ' + 'the token value from localStorage.getItem('token')')});
return this.http.get(AppSettings.URL, { headers: tokenHeader });

有人知道为什么会发生这种情况吗?谢谢!我有这段程式码,应该是返回细节。

angular authorization bearer-token
1个回答
0
投票

我建议你把它传给独立的变量。比如说,你可以把它传递给单独的变量。

let headers = {};
const token = localStorage.getItem('token');
if (token) {
  Object.assign(headers, {
    Authorization: `Bearer ${token}`
  })
}
© www.soinside.com 2019 - 2024. All rights reserved.