Apache 避免跨域选项请求

Apache 避免跨域选项请求,apache,cross-domain,Apache,Cross Domain,我有一个带有前端代码和api代码的项目,比如前端的project.com和api的api.project.com 因为我已经将apache配置为接受跨域请求,所以browser accept可以调用不同的url,但它也可以在每个GET请求之前使用OPTION request调用api 如何避免选项请求 我只为跨域配置添加了以下参数 Header set Access-Control-Allow-Origin '*' 如果设置自定义请求头,XMLHttpRequest将仅发送GET请求的请求。停

我有一个带有前端代码和api代码的项目,比如前端的project.com和api的api.project.com

因为我已经将apache配置为接受跨域请求,所以browser accept可以调用不同的url,但它也可以在每个GET请求之前使用OPTION request调用api

如何避免选项请求

我只为跨域配置添加了以下参数

Header set Access-Control-Allow-Origin '*'

如果设置自定义请求头,XMLHttpRequest将仅发送GET请求的请求。停止尝试设置自定义请求头。

自定义内容类型(应用程序/json)实际上正在触发预飞行。根据CORS规范(),除application/x-www-form-urlencoded、multipart/form数据或text/plain之外的任何内容类型都会触发预飞行

一旦浏览器收到这些标题,它将发出实际请求。您可以在此处了解有关CORS飞行前请求的更多信息:


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

见:


从x.y.z.开始允许
全盘否定
...

我必须设置几个自定义标题,但仍然希望避免选项调用,是否可能?不可能。我已删除了额外的请求标题,但它仍发送选项请求。有什么建议吗?你现在不应该了解你描述的问题。您需要提供更多代码来识别问题。
<Location /your/context>

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

...
</...>