我开发了一个PhoneGap应用程序,现在正在转换为移动网站。 除了一个小小故障外,一切顺利。 我通过POST请求使用某个第三方API,这在应用程序中运行良好,但在移动网站版本中失败。
仔细看后,似乎AngularJS(我猜浏览器实际上)是先发送一个OPTIONS请求。 我今天学到了很多关于CORS的知识,但我似乎无法弄清楚如何完全禁用它。 我无权访问该API(因此无法进行更改),但他们已将我正在处理的域添加到其Access-Control-Allow-Origin标头中。
这是我正在谈论的代码:
var request = {
language: 'fr',
barcodes: [
{
barcode: 'somebarcode',
description: 'Description goes here'
}
]
};
}
var config = {
headers: {
'Cache-Control': 'no-cache',
'Content-Type': 'application/json'
}
};
$http.post('http://somedomain.be/trackinginfo', request, config).success(function(data, status) {
callback(undefined, data);
}).error(function(data, status) {
var err = new Error('Error message');
err.status = status;
callback(err);
});
如何阻止浏览器(或AngularJS)发送OPTIONS请求并跳转到实际的POST请求? 我正在使用AngularJS 1.2.0。
提前致谢。