AngularJS: $http.obtenir 405 (Méthode Non Autorisée)
quand je reçois une demande à partir d'une url,comme ceci:
$http({ method: 'GET', url:'http://mooc-lms.dev.web.nd/v0.3/users/login' }).succès(function(data, le statut, les en-têtes de config) { //code });
Mais l'erreur que j'obtiens est:
OBTENEZ de l'http://mooc-lms.dev.web.nd/v0.3/users/login 405 (Méthode Non Autorisée)
Cependant,si je change la méthode de "récupérer" pour "POST",l'erreur est:
POST http://mooc-lms.dev.web.nd/v0.3/users/login 415 (Unsupported Media Type)
Quel est le problème?Est-il quelque chose de mal avec l'url(http://mooc-lms.dev.web.nd/v0.3/users/login)? J'ai trouver", "message":"Demande de la méthode" GET "non pris en charge"' dans l'url.
- Si vous avez cette erreur, c'est probablement parce que votre serveur n'a pas d'
GET
méthode à mettre en œuvre sur cette url. - montrez-nous votre back-end (non ce n'est pas sale), nous avons juste besoin de voir ce que votre demande est censé faire. peut-être que vous n'avez pas mis en œuvre?
Vous devez vous connecter pour publier un commentaire.
La raison que
GET
ne fonctionne pas, c'est que le serveur ne prend pas en chargeGET
pour la connexion d'extrémité, ce qui n'est guère surprenant. La raison la plus courante pour obtenir unHTTP 415
réponse sur unPOST
demande est parce que le serveur vous demande de spécifier unContent-Type
et/ouAccept
dans votre en-tête de requête.Mon exemple ci-dessous définit à
application/json
, ce qui est fréquent, mais pas omniprésent, alors vous aurez à vérifier que le serveur requiert, et ce qu'il va vous donner en retour. Étant donné que l'adresse contient des "mooc-lms", je suppose que vous êtes en train de faire une sorte de cours en ligne. Il devrait vous donner cette information. Que la documentation doit également vous dire ce que vous avez besoin pour envoyer les données de propriété.Access-Control-Allow-Origin: *
Access-Control-Allow-Origin
en-tête uniquement des impacts C. C'est totalement à part. Il semble que vous n'êtes pas censé Poster. Si vous êtes à la frappe de vos ressources par le biais de votre barre d'URL et obtenir ce que vous voulez, il semble que vous êtes juste GETing.