Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 如何以角度打印HttpRequest标题_Angular_Angular5 - Fatal编程技术网

Angular 如何以角度打印HttpRequest标题

Angular 如何以角度打印HttpRequest标题,angular,angular5,Angular,Angular5,我是angular的新手,所以情况是这样的:有一个后端应用程序正在向angular 5上的前端应用程序发送一些标题信息,所以我需要在我的登录页获取这些标题信息。 我正在使用截取器这里是代码 intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> { console.log('Before sending data'); console

我是angular的新手,所以情况是这样的:有一个后端应用程序正在向angular 5上的前端应用程序发送一些标题信息,所以我需要在我的登录页获取这些标题信息。 我正在使用截取器这里是代码

  intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {

    console.log('Before sending data');
     console.log('Request : ', req);
     console.log('Headers are');
     console.log('USER: ' + req.headers.get('USER'));
intercept(req:HttpRequest,next:HttpHandler):可观察{
console.log(“发送数据前”);
log('Request:',req);
log('Headers's');
log('USER:'+req.headers.get('USER'));
请提出解决方案。
提前感谢。

您是否使用“访问控制公开标头”从服务器端公开了x-token?因为不允许从客户端访问所有标头,所以您需要从服务器端公开它们

同样在前端中,您可以使用新的HTTP模块,使用类似{observe:'response'}的方法获得完整响应

http
  .get<any>('url', {observe: 'response'})
  .subscribe(resp => {
    console.log(resp.headers.get('X-Token'));
  });
http
.get('url',{observe:'response'})
.订阅(resp=>{
log(分别是headers.get('X-Token');
});

您可以在
拦截器中直接读取响应标题

试试这样的

intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
    return next.handle(req).pipe(
      tap((event) => {
        if (event instanceof HttpResponse) {
          console.log(event.headers);
        }
      })
    );
  }
intercept(req:HttpRequest,next:HttpHandler):可观察{
返回next.handle(req.pipe)(
轻触((事件)=>{
if(HttpResponse的事件实例){
日志(event.headers);
}
})
);
}
确保您正在从响应中公开标题
Access Control Expose headers

希望这有帮助-快乐编码:)