首页 > 解决方案 > Angular 7 - HttpInterceptor 不向请求添加标头

问题描述

我正在尝试将 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`
        }
      });

标签: angularhttp-headersangular-http-interceptors

解决方案


@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);

推荐阅读