我在角度使用$http
,我的代码是:
$http({
method: 'POST',
url: url,
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
data: data,
}).then(function success(result){
});
使用此Content-Type
我可以使用POST
方法发送。
当我将Content-Type
更改为application/json
时,我的POST
方法更改为OPTION
为什么???
我在Chrome和Firefox Developer上测试过但在IE中工作正常!!
答案 0 :(得分:0)
由于@charlietfl添加了评论,这些是您在发出跨源请求时由浏览器创建的。这些是“预检”请求首先通过OPTIONS方法向另一个域上的资源发送HTTP请求,以确定实际请求是否可以安全发送。跨站点请求是预先发布的。
如果使用POST发送请求数据的内容类型不是application / x-www-form-urlencoded,multipart / form-data或text / plain。那么请求是预检的。感谢