在调用其他域时,在实际POST,UPDATE,PUT或DELETE请求之前发送OPTION请求的原因是什么?(所以关于CORS请求)我知道它应该检查服务器是否可以处理真实请求,但为什么不立即发送真实请求?
我想到的一些原因:
- 查看该方法是否受支持
- 发送实际请求将返回相同的状态代码,因此无需先发送OPTION请求.
- 检查用户是否允许发送请求
- 没有意义,因为没有与OPTION请求一起发送auth标头
- 防止服务器上的负载过重
- 检查是否允许请求的标题和来源
- 这就是它现在的工作原理,但为什么不发送请求,我们可以从真实请求中读取错误.
- 如果不处理,阻止发送帖子数据
- 这是有效的唯一原因.使用选项请求将阻止不必要地将发布数据发送到服务器.但是我认为这在99%的时间里都不是问题,因为只发送了一小部分数据.
有人可以了解浏览器供应商在调用其他域时实施OPTION请求的原因吗?