Angular在POST/PUT请求中删除了授权头
创始人
2024-10-30 20:30:46
0

这是因为Angular的HttpClient默认使用了浏览器提供的XMLHttpRequest对象,在发送跨域请求时会先发送OPTIONS预检请求进行验证,此时如果代码中没有对OPTIONS请求进行处理,则会导致授权头被删除。解决方法是在服务端添加CORS(跨源资源共享)配置,或者在Angular代码中添加拦截器对OPTIONS请求进行处理,在请求头中添加Access-Control-Allow-Headers字段,并将其设为所需要的授权头。

以下是示例代码:

// 定义拦截器 @Injectable() export class AuthInterceptor implements HttpInterceptor { intercept(req: HttpRequest, next: HttpHandler): Observable> { if (localStorage.getItem('token')) { req = req.clone({ setHeaders: { Authorization: Bearer ${localStorage.getItem('token')} } }); }

if (req.method === 'OPTIONS') {
  req = req.clone({
    headers: req.headers.set('Access-Control-Allow-Headers', 'Authorization')
  });
}

return next.handle(req);

} }

// 在模块中添加拦截器 @NgModule({ imports: [ BrowserModule, HttpClientModule ], providers: [ { provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true } ], bootstrap: [AppComponent] }) export class AppModule { }

相关内容

热门资讯

透视ai!wepoker破解器... 透视ai!wepoker破解器有用吗(透视)总是是有辅助app(有挂方针)-哔哩哔哩1)wepoke...
据悉!模拟器打开hhpoker... 据悉!模拟器打开hhpoker(透视)竟然有辅助app(今日头条)-哔哩哔哩1、模拟器打开hhpok...
这一问题亟待解决!佛手在线大菠... 这一问题亟待解决!佛手在线大菠萝技巧(透视)原来有辅助平台(有挂功能)-哔哩哔哩1、任何佛手在线大菠...
透视模拟器!wepoker免费... 透视模拟器!wepoker免费脚本咨询(透视)都是是真的辅助修改器(讲解有挂)-哔哩哔哩1、wepo...
透视新版!德州透视是真的吗(透... 透视新版!德州透视是真的吗(透视)竟然有辅助软件(有挂细节)-哔哩哔哩暗藏猫腻,小编详细说明德州透视...
有了最新消息!wepoker怎... 有了最新消息!wepoker怎么设置房间(透视)切实是有辅助辅助器(有挂秘笈)-哔哩哔哩1、wepo...
透视ai代打!pokemmo手... 透视ai代打!pokemmo手机脚本辅助器(透视)一直是有辅助下载(有挂细节)-哔哩哔哩1、在pok...
记者获悉!wepoker一直输... 记者获悉!wepoker一直输的号能继续打吗(透视)其实真的有辅助安装(有挂方法)-哔哩哔哩暗藏猫腻...
透视规律!hhpoker辅助靠... 透视规律!hhpoker辅助靠谱吗(透视)果然真的有辅助工具(有挂方法)-哔哩哔哩1、实时hhpok...
透视透视!wepoker底牌透... 透视透视!wepoker底牌透视脚本(透视)一贯真的是有辅助修改器(有挂分享)-哔哩哔哩暗藏猫腻,小...