首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么发送OPTIONS请求,我可以禁用它吗?

为什么发送OPTIONS请求,我可以禁用它吗?
EN

Stack Overflow用户
提问于 2015-04-30 04:37:22
回答 9查看 519.9K关注 0票数 509

我正在构建一个web API。我发现每当我使用Chrome来POST,GET到我的API时,总是在真正的请求之前发送一个OPTIONS请求,这是相当恼人的。目前,我让服务器忽略任何OPTIONS请求。现在我的问题是,发送OPTIONS请求使服务器负载加倍有什么好处?有没有办法完全阻止浏览器发送OPTIONS请求?

EN

回答 9

Stack Overflow用户

发布于 2016-02-24 05:28:08

当您打开调试控制台并打开Disable Cache选项时,将始终发送印前检查请求(即在每个请求之前)。如果不禁用缓存,飞行前请求将只发送一次(每台服务器)

票数 57
EN

Stack Overflow用户

发布于 2015-05-18 12:30:35

是的,可以避免options请求。Options请求是当您将任何数据发送(post)到另一个域时的印前检查请求。这是一个浏览器安全问题。但是我们可以使用另一种技术: iframe传输层。我强烈建议你忘记任何CORS配置,使用现成的解决方案,它可以在任何地方工作。

看看这里:https://github.com/jpillora/xdomain

工作示例:http://jpillora.com/xdomain/

票数 39
EN

Stack Overflow用户

发布于 2016-02-22 11:02:36

正如在之前的文章中已经提到的,OPTIONS请求的存在是有原因的。如果您遇到服务器响应时间过长的问题(例如海外连接),您也可以让浏览器缓存印前检查请求。

让您的服务器使用Access-Control-Max-Age标头进行回复,对于到达同一端点的请求,印前检查请求将被缓存,并且不再发生。

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29954037

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档