Alternative $http
params serializer that follows
jQuery's param()
method logic.
The serializer will also sort the params alphabetically.
To use it for serializing $http
request parameters, set it as the paramSerializer
property:
$http({
url: myUrl,
method: 'GET',
params: myParams,
paramSerializer: '$httpParamSerializerJQLike'
});
It is also possible to set it as the default paramSerializer
in the
$httpProvider
.
Additionally, you can inject the serializer and use it explicitly, for example to serialize form data for submission:
.controller(function($http, $httpParamSerializerJQLike) {
//...
$http({
url: myUrl,
method: 'POST',
data: $httpParamSerializerJQLike(myData),
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
});
});