HttpPost
Executa uma requisição HTTP usando o método POST. O método de requisição POST, somente no formato texto e sem suporte para envio de arquivos, é utilizado quando houver a necessidade do envio de dados para o servidor como parte da solicitação, como enviar um formulário preenchido.
Sintaxe: HttpPost(Alfa Objeto, Alfa URL, Alfa Dados, Alfa end HTML);
Exemplo:
Definir Alfa vHTTP;
HttpObjeto(vHTTP);
Definir Alfa vHTML;
Definir Alfa vPostData;
vPostData = "NomeUsuario=SENIOR&EmailUsuario=senior@senior.com.br&Texto=SENIOR+SA";
HttpPost(vHTTP, "http://www.senior.com.br/cadastro.html",vPostData, vHTML);
Mensagem(Retorna, vHTML);
Exemplo com utilização de JSON:
definir alfa vHTTP;
definir alfa vHTML;
definir alfa vDados;
HttpObjeto(vHTTP);
HttpAlteraCabecalhoRequisicao(vHTTP, "Accept", "text/plain");
HttpAlteraCabecalhoRequisicao(vHTTP, "Content-Type", "application/json");
vDados = "
{\"NomeParametro1\": \"valor1\", \"NomeParametro2\": \"valor2\"}
";
HttpPost(vHTTP, "http://exemplo.com/app/path", vDados, vHTML);
Observação:
- O Gestão Empresarial | ERP envia por padrão a codificação Content-Type: charset=windows-1252. Essa codificação é usada por aplicações Windows, para que o servidor de serviço saiba como codificar os dados. Em servidores que não aceitam essa codificação, deve-se alterar a LSP para enviar da seguinte forma: UTF-8.
- Quando a função HttpPost for utilizada em conjunto com a função HttpAlteraCabecalhoRequisicao, e esta utilizar o cabeçalho "Content-Type" com o tipo application/json, é necessário que os dados da função HttpPost estejam no formato JSON. Caso contrário, irá retornar o status de erro HTTP: "440 - Bad Request". Por exemplo, neste caso é necessário informar: "{\"NomeParâmetro1\": \"valor1\", \"NomeParâmetro2\": \"Valor2\"}".
- Quando o Content-Type for igual a application/x-www-form-urlencoded, o valor dos dados devem seguir o padrão: chave1=valor1&chave2=valor2.
Nota
Função disponível para os sistemas Gestão Empresarial PME | GO UP, Gestão Empresarial | ERP, Gestão de Pessoas | HCM e Ronda Senior.