Je reçois cette erreur en utilisant ngResource pour appeler une API REST sur Amazon Web Services:
XMLHttpRequest ne peut pas charger http://server.apiurl.com:8000/s/login?login=facebook . La réponse à la demande de contrôle en amont ne passe pas la vérification du contrôle d'accès: aucun en-tête «Access-Control-Allow-Origin» n'est présent sur la ressource demandée. L'origine ' http: // localhost ' n'est donc pas autorisée à y accéder. Erreur 405
Un service:
socialMarkt.factory('loginService', ['$resource', function($resource){
var apiAddress = "http://server.apiurl.com:8000/s/login/";
return $resource(apiAddress, { login:"facebook", access_token: "@access_token" ,facebook_id: "@facebook_id" }, {
getUser: {method:'POST'}
});
}]);
Manette:
[...]
loginService.getUser(JSON.stringify(fbObj)),
function(data){
console.log(data);
},
function(result) {
console.error('Error', result.status);
}
[...]
J'utilise Chrome et je ne sais pas quoi faire d'autre pour résoudre ce problème. J'ai même configuré le serveur pour accepter les en-têtes d'origine localhost
.