我进行了jwt授权,并将该令牌存储到会话存储中,但是当我尝试将该令牌转换为字符串并记录它时,我得到null,这就是函数
login(user : User): void
{
this.header= new Headers({"content-Type": "application/json"});
this.osobaService.create(user,this.tokenUrl,this.header).then(p=> {sessionStorage.setItem("Token",p._body.slice(1,-1))});
this.tokenString = sessionStorage.getItem("Token");
console.log(this.tokenString);
}
它应该是简单的getItem方法,但我得到了null。
答案 0 :(得分:3)
' this.osobaService.create'是一个异步函数。在编写之前,您正尝试记录一个值。如果您更改此代码,则应记录正确的值。
login(user : User): void
{
this.header= new Headers({"content-Type": "application/json"});
this.osobaService.create(user,this.tokenUrl,this.header)
.then(p=> {
sessionStorage.setItem("Token",p._body.slice(1,-1))
this.tokenString = sessionStorage.getItem("Token");
console.log(this.tokenString);
});
}