1. Pergunta:
O back -end não pode receber os dados enviados por $ http.post em angularjs, e são sempre exibidos como nulos
Código de exemplo:
$ http.post (/admin/keyvalue/getListbypage, {PageIndex: 1, Pagesize: 8}) .Success (function () {alert ("mrjing");});O código não está errado, mas os dados não podem ser recebidos em segundo plano. Por que isso?
Usando o Monitoramento do Firefox: os parâmetros estão em formato JSON
Use o Google Monitoring: o método de transferência de parâmetros é solicitação de carga útil
Pode -se descobrir que o método de transferência de parâmetros é solicitação de carga útil, o formato do parâmetro é JSON e não é transferência de parâmetros de formulário; portanto, em segundo plano, os parâmetros não podem ser recebidos recebendo dados do formulário.
Ao enviar uma solicitação de formulário de postagem, o tipo de conteúdo usado é o aplicativo/x-www-forma-urlncoded e se a solicitação de postagem usando o Ajax nativo não se referir a ele.
Para cabeçalho de solicitação fixa, o tipo de conteúdo padrão é texto/simples; charset = utf-8, e o tipo de conteúdo aqui está:
--------------------------------------------------------------------------------------------------------------------------------------------------
2. Solução:
Faça o upload diretamente do código:
// o parâmetro a ser passado através do post var dados = {PageIndex: 1, PageSize: 8,}, // o endereço do post solicitação url = "/admin/keyvalue/getListbypage", // altere o método de passagem de parâmetro para formPostcfg = {headers: {'content-type': '' xwwwwwwwwwwwwn ({'content-type': '': 'Application/xwwwwwwwwn ({' content-ttye ':' Application/xwwwwwwn ({'content-ttye': 'Application/xwwwwwwn ({' content-type ':' Application/xwwwwwwwn ({'content-type': '' ':' APLATMESTROMENTO/XWW ({'content-tyeD} {return $ .param (dados);}}; // Envie uma solicitação de postagem para obter os dados $ http.post (url, dados, postcfg) .success (function (resposta) {alert ("mrjing");});Em seguida, vamos olhar para a ferramenta de monitoramento:
Monitoramento do Firefox: o tipo de parâmetro se tornou dados de formulário
Monitoramento do Google:
Agora, o método de transmissão de parâmetros se tornou o método de formulário, e o back -end pode receber os parâmetros normalmente!
O exposto acima é o conhecimento relevante sobre o motivo pelo qual os dados enviados por $ http.post em angularjs não podem ser recebidos pelo back -end. Espero que seja útil para todos. Se você tiver alguma dúvida, deixe -me uma mensagem e o editor responderá a todos a tempo. Muito obrigado pelo seu apoio ao site wulin.com!