如何跳过“选项”预检请求?

我开发了一个PhoneGap应用程序,现在将其转换为移动网站。除了一处小故障,一切都可以顺利进行。我通过POST请求使用了某个第三方API,该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。


提前致谢。


胡说叔叔
浏览 1604回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

AngularJS