(CORS) 浏览器如何知道何时进行飞行前请求

(CORS) How does the browser know when to do a pre-flight request

所以我使用 CORS 已经有一段时间了,我只是阅读了它在幕后的工作原理。

我的问题是浏览器如何知道何时进行飞行前请求?

目前没有任何问题,因为浏览器似乎运行良好,我只是有点好奇。因为当我发出请求时,我没有给它任何关于它是否是 CORS 的信息,但它仍然知道要进行飞行前检查。

如果出现以下情况,浏览器将发送预检请求:

  • 您将自定义 headers 添加到您的请求中
  • 您使用的方法不是 GET、HEAD 或 POST
  • 您将 POST 与不寻常的 Content-Type 一起使用。

此处有更多详细信息:HTTP access control (CORS), Preflighted requests