AngularJS - $http.post send data as json AngularJS - $http.post send data as json json json

AngularJS - $http.post send data as json


Use JSON.stringify() to wrap your json

var parameter = JSON.stringify({type:"user", username:user_email, password:user_password});    $http.post(url, parameter).    success(function(data, status, headers, config) {        // this callback will be called asynchronously        // when the response is available        console.log(data);      }).      error(function(data, status, headers, config) {        // called asynchronously if an error occurs        // or server returns response with an error status.      });


Consider explicitly setting the header in the $http.post (I put application/json, as I am not sure which of the two versions in your example is the working one, but you can use application/x-www-form-urlencoded if it's the other one):

$http.post("/customer/data/autocomplete", {term: searchString}, {headers: {'Content-Type': 'application/json'} })        .then(function (response) {            return response;        });


i think the most proper way is to use the same piece of code angular use when doing a "get" request using you $httpParamSerializer will have to inject it to your controller so you can simply do the following without having to use Jquery at all , $http.post(url,$httpParamSerializer({param:val}))

app.controller('ctrl',function($scope,$http,$httpParamSerializer){  $http.post(url,$httpParamSerializer({param:val,secondParam:secondVal}));}