带有Javascript请求的Http Option方法

时间:2011-12-01 13:52:02

标签: http http-post cors http-options-method

我使用backbone.js的模型。当我保存模型时,它会在firefox上向服务器端发送HTTP OPTIONS方法,但是使用safari发送HTTP POST方法。

我知道这不是关于backbone.js的问题,而是关于CORS。我将只检查服务器端的方法,GET,POST,PUT和DELETE,我不会使用HTTP OPTIONS方法。

我要求的网址是我的api:api.foo.com 和api要求:bar.com

那么,我如何控制所有浏览器请求我的api.foo.com使用HTTP POST而非OPTIONS? 如何与其他任何域的所有请求共享api.foo.com的内容?

注意:我已经将响应的标头从服务器端更改为:Access-Control-Allow-Origin:*

1 个答案:

答案 0 :(得分:7)

OPTIONS请求实际上是所谓的preflight request of the CORS specification。 Web浏览器使用此预检请求来检查服务器将在何种条件下接受来自相应源的请求。如果对预检请求的响应令人满意,浏览器将发送实际请求。

因此,为了符合此规范,您需要服务器重现steps of preflight request processing