在Angular CORS中抑制OPTIONS请求

时间:2014-05-12 14:51:42

标签: angularjs cors

如果我预知使用Angular进行的CORS调用确实会起作用,我可以抑制OPTIONS调用,以便它们不会在生产中不必要地继续发生吗?

2 个答案:

答案 0 :(得分:1)

此OPTIONS请求告诉客户端是否允许CORS请求;并且,对于那些请求,可以执行哪些方法(GET,POST,PUT等)。

According to W3c options call is not required如果您只实施simple methods:GET / POST / HEAD。

因此,如果您设置了Access-Control-Allow-Methods,请尝试将其更改为“GET,POST”并根据标准(如果浏览器如下),您的浏览器不需要激活选项调用

答案 1 :(得分:0)

要避免OPTIONS请求,您需要确保您的请求是" simple"请求。

  

一个简单的跨站点请求是:

     
      
  • 仅使用GETHEADPOST。如果POST用于向服务器发送数据,则使用HTTP Content-Type请求发送到服务器的POST数据是application/x-www-form-urlencoded之一,multipart/form-data },或text/plain

  •   
  • 不使用HTTP请求设置自定义标头(例如X-Modified等)

  •   

检查Angular是否未设置x-requested-with或其他任何意外情况。