我应该期待OPTIONS预检所有CORS请求吗?

时间:2013-07-02 18:20:42

标签: cors options preflight

我在客户端配置了两种类型的CORS请求。一个实现GET方法,另一个实现POST。

在使用第一个GET发出初始预检OPTIONS之后,后续的GET和POST(使用jQuery Ajax对象几乎完全配置)之前没有预检。

当我监控Chrome网络面板时,我没有看到OPTIONS预检在后续请求之前发生。

一旦浏览器验证了服务器接受了哪些方法和原点,并且一旦接受了第一次预检,浏览器是否会发送以下预检,因为它与服务器之间已经建立了CORS通信?

1 个答案:

答案 0 :(得分:4)

预检请求始终是必需的,但如果服务器允许,它可以由浏览器缓存。服务器以Access-Control-Max-Age标头响应,该标头指定可以缓存预检请求的时间长度。因此,如果您没有看到OPTIONS请求,则必须由浏览器缓存。