代码之家  ›  专栏  ›  技术社区  ›  tacos_tacos_tacos

设置后跨域请求的授权标头是否总是需要预飞行?

  •  1
  • tacos_tacos_tacos  · 技术社区  · 6 年前

    我最近很惊讶地得知,当我设置 Authorization 头,我的 POST 授权 由于其普遍性,header将被豁免。

    这是真的吗 授权 标头对于CORS不是特别的,因此每当您设置 头,浏览器必须在飞行前?

    1 回复  |  直到 6 年前
        1
  •  1
  •   sideshowbarker Miguel Tomás    6 年前

    是的,只要你加上 Authorization 请求的头,它会在浏览器中触发预飞行。那是因为 授权 未定义为 CORS safelisted request-header

    CORS safelist请求头的列表非常短;这是公正的 Accept , Accept-Language , Content-Language , Content-Type , DPR , Downlink , Save-Data Viewport-Width , Width

    任何添加到请求的头文件不在该列表中,都会触发浏览器进行预处理。

    看到了吗 https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#Preflighted_requests