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 { }

相关内容

热门资讯

推荐十款!大咖娱乐透视挂功能工... 推荐十款!大咖娱乐透视挂功能工具,大咖娱乐一贯是有透视挂工具(有辅助挂规律);大咖娱乐脚本下载中分为...
一分钟了解!辰鸿透视挂功能教程... 一分钟了解!辰鸿透视挂功能教程,辰鸿好像存在有透视挂教程(有辅助挂详情)1、下载好辰鸿脚本下载之后点...
科技揭秘!153棋牌透视挂功能... 科技揭秘!153棋牌透视挂功能软件,153棋牌真是是真的有透视挂软件(有辅助挂分析)1、科技揭秘!1...
免费测试版!来旺十三水辅助功能... 免费测试版!来旺十三水辅助功能神器,来旺十三水本来是真的有辅助神器(有辅助挂秘籍)1、全新机制【来旺...
最新通报!微乐三打一透视功能a... 最新通报!微乐三打一透视功能app,微乐三打一一贯存在有透视app(有辅助挂分享)一、微乐三打一可以...
教程辅助!江山大厅辅助功能教程... 教程辅助!江山大厅辅助功能教程,江山大厅切实是有辅助教程(有辅助挂猫腻)1、江山大厅模拟器是什么优化...
专业讨论!永乐跑胡子辅助功能脚... 专业讨论!永乐跑胡子辅助功能脚本,永乐跑胡子原来存在有辅助脚本(有辅助挂实锤)1、永乐跑胡子透视辅助...
我来向大家传授!微友约局开挂功... 我来向大家传授!微友约局开挂功能教程,微友约局总是有开挂教程(真实有辅助挂)1、我来向大家传授!微友...
一分钟教你!宝宝浙江麻将透视功... 一分钟教你!宝宝浙江麻将透视功能插件,宝宝浙江麻将确实存在有透视插件(真的有辅助挂)暗藏猫腻,小编详...
今日头条!开云棋牌透视挂功能插... 今日头条!开云棋牌透视挂功能插件,开云棋牌真是真的有透视挂插件(有辅助挂实锤)1、操作简单,无需开云...