Das Beispiel in diesem Artikel beschreibt die Methode zum Übergeben von Parametern durch den Nachrichtentext über $http in Angularjs per Post-Anfrage. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
In AngularJS verwendet $http Post, um Parameter im Nachrichtentext zu übergeben. Die folgenden Änderungen müssen vorgenommen werden, um die Richtigkeit der übergebenen Parameter sicherzustellen im Nachrichtentext.
1. Stellen Sie es bei der Anmeldung ein:
var httpPost = function($httpProvider) { /******************************************* 说明:$http的post提交时,纠正消息体 ********************************************/ // Use x-www-form-urlencoded Content-Type $httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8'; /* * The workhorse; converts an object to x-www-form-urlencoded serialization. * @param {Object} obj * @return {String} */ var param = function(obj) { var query = '', name, value, fullSubName, subName, subValue, innerObj, i; for (name in obj) { value = obj[name]; if (value instanceof Array) { for (i = 0; i < value.length; ++i) { subValue = value[i]; fullSubName = name + '[' + i + ']'; innerObj = {}; innerObj[fullSubName] = subValue; query += param(innerObj) + '&'; } } else if (value instanceof Object) { for (subName in value) { subValue = value[subName]; fullSubName = name + '[' + subName + ']'; innerObj = {}; innerObj[fullSubName] = subValue; query += param(innerObj) + '&'; } } else if (value !== undefined && value !== null) query += encodeURIComponent(name) + '=' + encodeURIComponent(value) + '&'; } return query.length ? query.substr(0, query.length - 1) : query; }; // Override $http service's default transformRequest $httpProvider.defaults.transformRequest = [ function(data) { return angular.isObject(data) && String(data) !== '[object File]' ? param(data) : data; } ]; }; var ngApp = angular.module('wtApp', ['ngCookies'], httpPost);
2 post
$http({ method: 'POST', url: 'GetData.ashx', params: { id: '1002' },//params作为url的参数 data: { keyName: 'qubernet' }//作为消息体参数 }, function (data) { });
Weitere verwandte Artikel zur Implementierung von $http in Angularjs zur Übergabe von Parametern über den Nachrichtentext in einer Post-Anfrage finden Sie im PHP-Chinesisch Webseite!