Envio de dados com XMLHttpRequest post

Desbloqueie o verdadeiro potencial do desenvolvimento web com XMLHttpRequest POST. Aprenda a aproveitar suas capacidades para construir aplicativos web envolventes, integrar APIs, permitir colaboração em tempo real e muito mais.

Miguel Oliveira

Miguel Oliveira

23 maio 2025

Envio de dados com XMLHttpRequest post

No mundo do desenvolvimento web moderno, a troca de dados assíncrona entre o cliente e o servidor é um aspecto crucial na construção de aplicações dinâmicas e responsivas. Uma das ferramentas fundamentais que possibilitam essa funcionalidade é o objeto XMLHttpRequest, especificamente seu método POST. Embora a API XMLHttpRequest possa parecer desatualizada na era de APIs mais modernas como Fetch e Axios, entender seus princípios básicos ainda é essencial para qualquer desenvolvedor JavaScript.

O método POST do XMLHttpRequest permite que você envie dados de forma assíncrona para um servidor sem atualizar toda a página web. Essa abordagem melhora a experiência do usuário ao fornecer um fluxo de informações mais suave e eficiente, levando, em última análise, a um melhor desempenho geral da aplicação.

Configurando um XMLHttpRequest POST


Antes de mergulhar no código, vamos revisar o processo básico de configuração para um XMLHttpRequest POST:

  1. Criar uma nova instância do objeto XMLHttpRequest.
  2. Definir o método de solicitação (POST) e o ponto de extremidade da URL.
  3. Configurar os cabeçalhos da solicitação, se necessário.
  4. Definir a função para lidar com a resposta do servidor.
  5. Enviar a solicitação com os dados.
// 1. Criar uma nova instância do XMLHttpRequest
const xhr = new XMLHttpRequest();

// 2. Definir o método de solicitação e a URL
xhr.open('POST', '/api/endpoint', true);

// 3. Configurar os cabeçalhos da solicitação (se necessário)
xhr.setRequestHeader('Content-Type', 'application/json');

// 4. Definir o manipulador de resposta
xhr.onreadystatechange = function() {
  if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
    // Lidar com a resposta do servidor
    console.log(xhr.responseText);
  }
};

// 5. Enviar a solicitação com os dados
const data = JSON.stringify({ name: 'John Doe', email: 'john@example.com' });
xhr.send(data);

No exemplo acima, criamos uma nova instância do XMLHttpRequest, definimos o método POST e o ponto de extremidade da URL, configuramos os cabeçalhos de solicitação apropriados e lidamos com a resposta do servidor no manipulador de evento onreadystatechange. Finalmente, enviamos a solicitação com os dados em formato JSON usando o método send().

Tratamento de Respostas e Tratamento de Erros


Embora enviar a solicitação seja crucial, lidar adequadamente com a resposta do servidor é igualmente importante. O manipulador de evento onreadystatechange permite que você monitore o progresso da solicitação e tome as ações apropriadas com base nas propriedades readyState e status.

xhr.onreadystatechange = function() {
  if (xhr.readyState === XMLHttpRequest.DONE) {
    if (xhr.status === 200) {
      // Resposta bem-sucedida
      console.log(xhr.responseText);
    } else {
      // Tratamento de erros
      console.error('Solicitação falhou. Status:', xhr.status);
    }
  }
};

No exemplo acima, verificamos o readyState para garantir que a solicitação foi concluída (XMLHttpRequest.DONE), e então examinamos a propriedade status para determinar o sucesso ou a falha da solicitação. Um código de status 200 geralmente indica uma resposta bem-sucedida, enquanto outros códigos de status podem indicar várias condições de erro.

Enviando Dados de Formulário


Embora os exemplos anteriores tenham se concentrado em enviar dados JSON, o XMLHttpRequest também permite que você envie dados de formulário de maneira perfeita. Isso é particularmente útil ao trabalhar com formulários HTML tradicionais ou ao lidar com uploads de arquivos.

const formData = new FormData();
formData.append('name', 'John Doe');
formData.append('email', 'john@example.com');
formData.append('file', fileInput.files[0]);

xhr.open('POST', '/api/endpoint', true);
xhr.send(formData);

Neste exemplo, criamos uma instância de FormData e anexamos os campos do formulário usando o método append(). Podemos até incluir uploads de arquivo anexando o objeto File de um elemento <input type="file">. Finalmente, enviamos o objeto FormData diretamente usando o método send().

Gerar código XMLHttpRequest com Apidog

Apidog é uma plataforma colaborativa de desenvolvimento de API tudo-em-um que fornece um conjunto abrangente de ferramentas para projetar, depurar, testar, publicar e simular APIs. O Apidog permite que você crie automaticamente o código XMLHttpRequest para fazer solicitações HTTP.

button

Segue o processo para usar o Apidog para gerar código XMLHttpRequest:

Passo 1: Abra o Apidog e selecione nova solicitação

Passo 2: Insira a URL do ponto de extremidade da API para a qual deseja enviar uma solicitação, insira qualquer cabeçalho ou parâmetro de string de consulta que deseje incluir com a solicitação e, em seguida, clique em "Design" para mudar para a interface de design do Apidog.

Passo 3: Selecione "Gerar código do cliente" para gerar seu código.

Passo 4: Copie o código gerado e cole-o em seu projeto.

Usando Apidog para Enviar Solicitações HTTP

Apidog oferece vários recursos avançados que aprimoram ainda mais sua capacidade de testar solicitações HTTP. Esses recursos permitem que você personalize suas solicitações e lide com cenários mais complexos sem esforço.

button

Passo 1: Abra o Apidog e crie uma nova solicitação.

Apidog

Passo 2: Encontre ou insira manualmente os detalhes da API para a solicitação POST que deseja fazer.

Apidog

Passo 3: Preencha os parâmetros necessários e quaisquer dados que deseja incluir no corpo da solicitação.

Apidog

Conclusão

Como você pode ver, o XMLHttpRequest POST é mais do que apenas uma ferramenta técnica – é um divisor de águas que abre um mundo de possibilidades para os desenvolvedores web. Seja construindo interfaces de usuário dinâmicas, integrando-se a APIs poderosas ou criando a próxima geração de experiências web imersivas, o XMLHttpRequest POST é sua arma secreta.

Explore more

Como acessar a API do Claude 3.7 Sonnet e testar usando Apidog

Como acessar a API do Claude 3.7 Sonnet e testar usando Apidog

Se você está empolgado com o último lançamento da Anthropic, Claude 3.7 Sonnet, e quer explorar suas capacidades através da API enquanto o testa com o Apidog, você está no lugar certo. 💡Antes de começarmos, deixe-me fazer uma rápida observação: baixe o Apidog gratuitamente hoje e otimize seu processo de teste de API, especialmente para explorar os poderosos recursos do Claude 3.7 Sonnet—perfeito para desenvolvedores que desejam testar modelos de IA de ponta como este!botão Vamos começar com a

25 fevereiro 2025

Como passar o x-API-key no cabeçalho?

Como passar o x-API-key no cabeçalho?

Desvende os segredos da segurança eficaz de APIs, dominando como passar x-API-key nos cabeçalhos. Este guia abrangente revelará a importância desse processo e como ferramentas como o Apidog podem facilitar seus esforços. Continue lendo para garantir que suas interações com a API permaneçam seguras!

12 agosto 2024

Como corrigir o erro HTTP 405 Método Não Permitido no Postman

Como corrigir o erro HTTP 405 Método Não Permitido no Postman

O código de erro HTTP 405 ocorre quando você tenta acessar um servidor usando uma chave de API ou token de acesso inválido ou ausente. Neste artigo, veremos mais sobre o erro 405 e como corrigi-lo.

11 agosto 2024

Pratique o design de API no Apidog

Descubra uma forma mais fácil de construir e usar APIs