Ich hatte eine PhoneGap-App entwickelt, die jetzt in eine mobile Website umgewandelt wird. Bis auf einen kleinen Fehler funktioniert alles reibungslos. Ich verwende eine bestimmte Drittanbieter-API über eine POST-Anfrage, die in der App einwandfrei funktioniert, in der Version der mobilen Website jedoch fehlschlägt.
Bei näherer Betrachtung scheint AngularJS (ich denke, der Browser tatsächlich) zuerst eine OPTIONS-Anfrage zu senden. Ich habe heute viel über CORS gelernt, aber ich kann anscheinend nicht herausfinden, wie ich es insgesamt deaktivieren kann. Ich habe keinen Zugriff auf diese API (daher sind Änderungen auf dieser Seite nicht möglich), aber sie haben die Domäne, an der ich arbeite, zu ihrem Access-Control-Allow-Origin-Header hinzugefügt.
Dies ist der Code, über den ich spreche:
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);
});
Wie kann ich verhindern, dass der Browser (oder AngularJS) diese OPTIONS-Anforderung sendet, und einfach zur eigentlichen POST-Anforderung springen? Ich benutze AngularJS 1.2.0.
Danke im Voraus.