MCPcopy Index your code
hub / github.com/angular-ui/ui-router / $HttpParamSerializerJQLikeProvider

Function $HttpParamSerializerJQLikeProvider

test/angular/1.4/angular.js:9643–9713  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

9641}
9642
9643function $HttpParamSerializerJQLikeProvider() {
9644 /**
9645 * @ngdoc service
9646 * @name $httpParamSerializerJQLike
9647 * @description
9648 *
9649 * Alternative {@link $http `$http`} params serializer that follows
9650 * jQuery's [`param()`](http://api.jquery.com/jquery.param/) method logic.
9651 * The serializer will also sort the params alphabetically.
9652 *
9653 * To use it for serializing `$http` request parameters, set it as the `paramSerializer` property:
9654 *
9655 * ```js
9656 * $http({
9657 * url: myUrl,
9658 * method: 'GET',
9659 * params: myParams,
9660 * paramSerializer: '$httpParamSerializerJQLike'
9661 * });
9662 * ```
9663 *
9664 * It is also possible to set it as the default `paramSerializer` in the
9665 * {@link $httpProvider#defaults `$httpProvider`}.
9666 *
9667 * Additionally, you can inject the serializer and use it explicitly, for example to serialize
9668 * form data for submission:
9669 *
9670 * ```js
9671 * .controller(function($http, $httpParamSerializerJQLike) {
9672 * //...
9673 *
9674 * $http({
9675 * url: myUrl,
9676 * method: 'POST',
9677 * data: $httpParamSerializerJQLike(myData),
9678 * headers: {
9679 * 'Content-Type': 'application/x-www-form-urlencoded'
9680 * }
9681 * });
9682 *
9683 * });
9684 * ```
9685 *
9686 * */
9687 this.$get = function() {
9688 return function jQueryLikeParamSerializer(params) {
9689 if (!params) return '';
9690 var parts = [];
9691 serialize(params, '', true);
9692 return parts.join('&');
9693
9694 function serialize(toSerialize, prefix, topLevel) {
9695 if (toSerialize === null || isUndefined(toSerialize)) return;
9696 if (isArray(toSerialize)) {
9697 forEach(toSerialize, function(value, index) {
9698 serialize(value, prefix + '[' + (isObject(value) ? index : '') + ']');
9699 });
9700 } else if (isObject(toSerialize) && !isDate(toSerialize)) {

Callers

nothing calls this directly

Calls 1

serializeFunction · 0.70

Tested by

no test coverage detected