【问题标题】:how to set x-auth-token in header angular 5如何在标头角度 5 中设置 x-auth-token
【发布时间】:2018-04-12 09:32:54
【问题描述】:

我是 angular 新手,我有一个 api 来创建会话,其中响应我得到 sessionId,所以我将它存储在会话存储中:

sessionStorage.setItem('token',res["sId"]);

然后在此之后我调用另一个 api 我想设置相同的令牌,所以我这样做:

public opt={
  headers: new HttpHeaders().set('x-auth-token', JSON.stringify(sessionStorage.getItem('token')))
}

api 调用:

Initialcheck(reqpara){
  return this.http.post(this.check1_url,reqpara,this.opt )
}

但我面临一个问题,在 api 调用中它使用的是以前的令牌而不是当前的令牌。请帮帮我。

【问题讨论】:

  • 似乎在该请求之后调用了sessionStorage.setItem()。因此请求读取旧值。会是这样吗?
  • 我在 ngOnInit() 上调用 getsession() ,然后在 html 中有一个按钮,点击我正在发送 sessionId

标签: angular token httpclient


【解决方案1】:

可能是因为 HttpHeader 的实例是不可变的,所以您无法正确设置标头。尝试以这种方式进行:

let headers = new HttpHeaders();
headers = headers.set('x-auth-token',JSON.stringify(sessionStorage.getItem('token'));
opt.headers = headers;

const headers = new HttpHeaders({'x-auth-token':JSON.stringify(sessionStorage.getItem('token')});
opt.headers = headers;

【讨论】:

    猜你喜欢
    • 2015-05-11
    • 1970-01-01
    • 1970-01-01
    • 2018-06-02
    • 2018-09-06
    • 2020-03-26
    • 2013-11-24
    • 2015-11-05
    • 2021-02-17
    相关资源
    最近更新 更多