我正在尝试为我的应用程序使用授权事实。为此,我使用本地存储来获取项目。当用户登录时,我已经将令牌存储在本地存储中,注销时将删除本地存储项目。我尝试检查当用户登录然后找到该项目时,我后端的凭据否则不会。为此,我使用以下代码来处理我的要求:-
Demo.Service.ts
const httpOptions = {
headers : new HttpHeaders({
Authorization: 'Bearer ' + JSON.parse(localStorage.getItem('user')).token
})
}
但是我发现了这个错误:-
我将如何解决这个问题。我会感谢所有的想法。请帮忙。
答案 0 :(得分:0)
我认为,发生此错误是因为您没有在本地存储中的用户对象上设置令牌,因此它本质上是在尝试查找 null.token
试试下面的代码。
Authorization: 'Bearer ' + JSON.parse(localStorage.getItem('user') || '{}').token
如果在本地存储中找不到 {}
对象,则此处传递一个空的 JSON 对象 user
。
我认为,它应该可以解决您的问题:-