首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >避免跨域选项请求

避免跨域选项请求
EN

Stack Overflow用户
提问于 2014-09-17 04:14:32
回答 3查看 807关注 0票数 0

我有一个项目的前端代码和应用编程接口代码,如project.com的前端和api.project.com的应用编程接口。

因为我已经将apache配置为接受跨域请求,所以浏览器接受调用不同的url,但它也会在每次GET请求之前调用带有OPTION请求的api。

如何避免OPTION请求?

我只为跨域配置添加了下面的参数;

代码语言:javascript
复制
Header set Access-Control-Allow-Origin '*'
EN

回答 3

Stack Overflow用户

发布于 2014-12-10 05:38:45

定制的Content-Type (application/json)实际上触发了印前检查。根据CORS规范(http://www.w3.org/TR/cors/),除应用程序/x-www-form-urlencoded、多部分/表单数据或文本/纯文本之外的任何内容类型都会触发印前检查。

一旦浏览器接收到这些头文件,它就会发出实际的请求。您可以在此处了解有关CORS印前检查请求的更多信息:

http://www.html5rocks.com/en/tutorials/cors/

票数 2
EN

Stack Overflow用户

发布于 2014-12-04 04:14:14

如果您设置了自定义请求头部,则XMLHttpRequest只会为GET请求发送preflight options request。停止尝试设置自定义请求头。

票数 0
EN

Stack Overflow用户

发布于 2014-12-11 01:15:46

我不确定这是否对您有帮助-但您可以在apache配置中禁止OPTION请求。

请参阅:http://httpd.apache.org/docs/2.2/mod/core.html#limit

代码语言:javascript
复制
<Location /your/context>

  <Limit OPTIONS>
    Allow from x.y.z
    Deny from all
  </Limit> 

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

https://stackoverflow.com/questions/25877642

复制
相关文章

相似问题

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