Je construis une application en utilisant AngularJS
et j'ai un formulaire de connexion à partir duquel je veux envoyer JSON
comme corps de la demande.
Dans mon contrôleur ;
$scope.credentials = {userid: $scope.userid, password: $scope.password};
$scope.login = function () {
$http({
method : 'POST',
url : 'http://localhost/login.json',
data : $scope.credentials,
headers: {'Content-Type': 'application/json'}
}).success(function (data) {
// code
}).error(function (data, status, headers, config) {
$scope.status = status + ' ' + headers;
console.log($scope.status);
});
};
Mais lorsque je soumets le formulaire, la requête POST ne s'exécute pas et j'obtiens un message dans la console comme suit ;
0 function (name) {
"use strict";
if (!headersObj) headersObj = parseHeaders(headers);
if (name) {
return headersObj[lowercase(name)] || null;
}
return headersObj;
}
Qu'est-ce que je fais de mal ici ?
Si je changeais la ligne
headers: {'Content-Type': 'application/json'}
à
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
la demande POST est faite. Mais je ne veux pas l'envoyer sous forme de valeurs de formulaire, je veux plutôt envoyer la requête en JSON.