Sobes.tech
Junior — Middle

De que componentes é composta uma requisição HTTP e como eles interagem?

sobes.tech IA

Resposta da IA

Uma requisição HTTP consiste em vários componentes principais:

  1. Linha de início (Request Line) — contém o método da requisição (GET, POST, etc.), a URL e a versão do protocolo HTTP.

  2. Cabeçalhos (Headers) — um conjunto de pares chave-valor que transmitem informações meta sobre a requisição, por exemplo Content-Type, Authorization, User-Agent.

  3. Corpo da requisição (Body) — uma parte opcional que contém os dados enviados pelo cliente ao servidor (por exemplo, dados de formulário ou JSON em POST).

  4. Linha em branco — separa os cabeçalhos do corpo.

Interação dos componentes:

  • O cliente forma a linha de início com o método e a URL necessários.
  • Adiciona os cabeçalhos necessários para descrever a requisição.
  • Se necessário, adiciona o corpo com os dados.
  • Envia a requisição ao servidor.

Exemplo de requisição HTTP:

POST /api/users HTTP/1.1
Host: example.com
Content-Type: application/json
Authorization: Bearer token123

{"name": "John", "age": 30}

Em Node.js, para lidar com requisições HTTP, usam-se os objetos IncomingMessage (para a requisição) e ServerResponse (para a resposta), que permitem ler a linha de início, os cabeçalhos e o corpo da requisição.