Angular 7-HttpInterceptor不向请求添加标头

时间:2019-02-22 04:50:30

标签: angular http-headers angular-http-interceptors

我正在尝试向所有请求添加Authorization标头,并且遇到了一些问题。即使我添加了标题,在进行网络调用时也没有使用标题。

下面是我的拦截器代码:

 const user: string = localStorage.getItem('user');
const token: string = localStorage.getItem('token');

const authReq = request.clone({
  headers: request.headers.set('Authorization', user + ',' + token)
});
return next.handle(authReq);

我已从角度文档中获取了此代码,但不确定在这里缺少什么。

我也尝试了以下代码,但是没有运气:

request = request.clone({
        setHeaders: {
          Authorization: `something`
        }
      });

2 个答案:

答案 0 :(得分:1)

@Logan 尝试一下,

除非您的实施要求,否则

用户和您的token都不是必需的。

const user: string = localStorage.getItem('user');
const token: string = localStorage.getItem('token');

const  clonedRequest = req.clone({
   headers: new HttpHeaders({
         Authorization: token,
         "Content-Type": "application/json"
       })
    });

return next.handle(clonedRequest);

答案 1 :(得分:0)

使用例如:

let headers = new HttpHeaders({
    'Authorization': `Bearer ${token}`,
    'another', 'somedata'
});