Angular 5中的自定义Http标头

时间:2018-03-03 15:01:16

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

如何使用拦截器添加授权和自定义标头。请查看演示链接stackBlitz

请参阅控制台屏幕截图以获取参考browser console-request header

自定义标题已添加到

  

的访问控制请求报头:AUTHKEY,内容类型,设备ID

我希望将标头添加为标头的一部分,而不是在access-control-request-headers内。

Angular Version:5

请在此建议我

1 个答案:

答案 0 :(得分:0)

屏幕截图中的请求不是您要添加标题的实际请求 - 这是您的浏览器发出的OPTIONS运行前请求。某些浏览器在发出跨源请求时强制执行此行为。

您是否收到错误回复?我怀疑你实际遇到的是一个CORS问题。

编辑1:我不知道你的堆栈是什么样的,但下面的文章帮助我解决了我的Angular CORS问题:https://docs.microsoft.com/en-us/aspnet/core/security/cors

在我的情况下,我完全避免必须通过将内容类型(从application / Json)更改为text / plain来完成飞行前请求。

  

预检请求

     

对于某些CORS请求,浏览器会发送一个   附加请求,在发送之前称为"预检请求"   对资源的实际请求。浏览器可以跳过预检   如果满足以下条件,请求:

     

请求方法是GET,HEAD或POST,以及

     

除了Accept之外,应用程序不会设置任何请求标头,   接受语言,内容语言,内容类型或最后事件ID,以及

     

Content-Type标头(如果已设置)是以下之一:

     
      
  • 应用程序/ x-WWW窗体-urlencoded

  •   
  • 的multipart / form-data的

  •   
  • 纯文本/

  •