Este artigo descreve o método de passar parâmetros através do corpo da mensagem no AngularJS por solicitação post. Compartilhe -o para sua referência, como segue:
Em AngularJS, $ http passa parâmetros no corpo da mensagem como postagem. As seguintes modificações precisam ser feitas para garantir a correção dos parâmetros passados pelo corpo da mensagem.
1. Defina -o ao declarar o pedido:
var httppost = function ($ httpprovider) { / ************************************************* $ httpprovider.defaults.headers.post ['content-type'] = 'Application/x-www-forma-urlencoded; charset = utf-8'; / * * O cavalo de trabalho; Converte um objeto em serialização x-www-forma-urlcoded. * @param {objeto} obj * @return {string} */ var param = function (obj) {var query = '', nome, valor, fullsubname, subname, subvalorou, inerobj, i; para (nome em obj) {value = obj [nome]; if (instância do valor da matriz) {for (i = 0; i <value.Length; ++ i) {subvalorE = value [i]; FullSubname = nome + '[' + i + ']'; inerobj = {}; inerobj [fullSubname] = subvalorou; consulta + = param (inerobj) + '&'; }} else if (value Instância do objeto) {for (subname in value) {subvalue = value [subname]; FullSubname = Name + '[' + Subname + ']'; inerobj = {}; inerobj [fullSubname] = subvalorou; consulta + = param (inerobj) + '&'; }} else if (value! == indefinido && value! == null) Query + = codeuricomponent (nome) + '=' + codeuricomponent (value) + '&'; } return query.length? query.substr (0, query.length - 1): Query; }; // Substituir $ padrão TransformRequest do Serviço HTTP $ httpprovider.defaults.transformRequest = [function (data) {return angular.isObject (data) && string (dados)! == '[arquivo objeto]'? param (dados): dados; }];}; var ngapp = angular.module ('wtapp', ['ngcookies'], httppost);2. Ligue para $ HTTP POST
$ http ({método: 'post', url: 'getData.ashx', params: {id: '1002'}, // params como o parâmetro dos dados da URL: {KeyName: 'qubernet'} // como o parâmetro do corpo da mensagem}, function (data) {});Espero que este artigo seja útil para a programação do AngularJS de todos.