如何使AngularJS忽略ajax OPTIONS方法?

时间:2012-09-28 09:37:47

标签: javascript jquery ajax cross-domain angularjs

在进行跨域Ajax POST请求时,AngularJS首先发送HTTP OPTIONS请求。 jQuery做同样的事情,我理解这是规范的一部分。区别在于如果OPTIONS请求出现错误(例如服务器不支持它,通常就是这种情况),jQuery将继续并发出POST请求,而AngularJS只是默默地失败并放弃。有没有办法强迫它发出POST请求?

1 个答案:

答案 0 :(得分:3)

正如Guillaume86所说,如果请求是跨域的,则浏览器会发送OPTIONS请求(也就是预检CORS请求)。请参见规范http://www.w3.org/TR/cors/。如果设置缓存标头,浏览器将缓存它。例如:

 Access-Control-Max-Age: 1728000