Escolar Documentos
Profissional Documentos
Cultura Documentos
Mensagens HTTP
Dados são trocados entre servidor e cliente por meio de mensagens HTTP. Há dois tipos de
mensagens: requisições (requests) enviadas pelo cliente para disparar uma ação no servidor,
e respostas (responses), a réplica do servidor.
https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Mensagens 1/8
31/01/2021 Mensagens HTTP - HTTP | MDN
https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Mensagens 2/8
31/01/2021 Mensagens HTTP - HTTP | MDN
Requisições HTTP
Linha inicial
Requisições HTTP são mensagens enviadas pelo cliente para iniciar uma ação no servidor.
Suas linhas iniciais contêm três elementos:
1. Um método HTTP, um verbo (como GET , PUT ou POST ) ou um nome (como HEAD ou
OPTIONS ), que descrevem a ação a ser executada. Por exemplo, GET indica que um
recurso deve ser obtido ou POST significa que dados são inseridos no servidor (criando
ou modificando um recurso, ou gerando um documento temporário para mandar de
volta).
2. O alvo da requisição, normalmente um URL, ou o caminho absoluto do protocolo, porta
e domínio são em geral caracterizados pelo contexto da requisição. O formato deste
alvo varia conforme o método HTTP. Pode ser
Um caminho absoluto, seguido de um '?' e o texto da consulta. Esta é a forma
mais comum, conhecida como a forma original, e é usada com os métodos GET ,
POST , HEAD , e OPTIONS .
POST / HTTP/1.1
GET /background.png HTTP/1.0
HEAD /test.html?query=alibaba HTTP/1.1
OPTIONS /anypage.html HTTP/1.0
Uma URL completa, conhecida como a forma absoluta, usada principalmente com
GET quando conectado a um proxy.
GET http://developer.mozilla.org/en-US/docs/Web/HTTP/Messages
HTTP/1.1
O componente autoridade de um URL, que consiste no nome do domínio e
opcionalmente uma porta (prefixada por ':' ), chamada de forma autoridade. Só
usada com CONNECT ao estabelecer um túnel HTTP.
CONNECT developer.mozilla.org:80 HTTP/1.1
A forma asterisco, um simples asterisco ( '*' ), usada com OPTIONS . Representa
o servidor como um todo.
OPTIONS * HTTP/1.1
3 A versão HTTP que define a estrutura do restante da mensagem atuando como um
https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Mensagens 3/8
31/01/2021 Mensagens HTTP - HTTP | MDN
3. A versão HTTP, que define a estrutura do restante da mensagem, atuando como um
indicador da versão esperada para uso na resposta.
Cabeçalhos
Corpo
A parte final da requisição é o corpo. Nem todas as requisições tem um: as que pegam
recursos como GET HEAD DELETE ou OPTIONS usualmente não precisam de um
https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Mensagens 4/8
31/01/2021 Mensagens HTTP - HTTP | MDN
recursos, como GET , HEAD , DELETE, ou OPTIONS, usualmente não precisam de um.
Algumas requisições enviam dados ao servidor a fim de atualizá-lo: é o caso frequente de
requisições POST (contendo dados de formulário HTML).
Respostas HTTP
Linha de status
A linha inicial de uma resposta HTTP, chamada de linha de status, contém a seguinte
informação:
Uma linha de status típica se parece com: HTTP/1.1 404 Not Found.
Cabeçalhos
Cabeçalhos HTTP para respostas seguem a mesma estrutura de qualquer outro cabeçalho:
uma cadeia de caracteres insensível à caixa seguida de dois pontos ( ':' ) e um valor cuja
estrutura depende do tipo de cabeçalho. O cabeçalho inteiro, incluindo o valor, consiste em
uma única linha.
Corpo
A última parte de uma resposta é o corpo. Nem toda resposta tem um: aquelas com código de
status 201 ou 204 normalmente não tem.
Quadros HTTP/2
Mensagens HTTP/1 x têm algumas desvantagens quanto ao desempenho:
https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Mensagens 6/8
31/01/2021 Mensagens HTTP - HTTP | MDN
Mensagens HTTP/1.x têm algumas desvantagens quanto ao desempenho:
Nenhuma multiplexação pode ser feita. É necessário abrir várias conexões no mesmo
servidor: e conexões TCP quentes são mais eficientes que frias.
HTTP/2 introduz um passo extra: ele divide mensagens HTTP/1.x em quadros que são
embutidos em um fluxo. Quadros de dados e de cabeçalho são separados, isto permite a
compressão do cabeçalho. Muitos fluxos podem ser conjugados, um processo chamado de
multiplexação, permitindo mais eficiência nas conexões TCP subjacentes.
https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Mensagens 7/8
31/01/2021 Mensagens HTTP - HTTP | MDN
Connection
Quadros HTTP agora são transparentes aos desenvolvedores web. Isso é um passo adicional
no HTTP/2, entre mensagens HTTP/1.1 e o protocolo de transporte subjacente. Nenhuma
mudança é necessária nas API usadas pelo desenvolvedor web para utilizar quadros; quando
disponível tanto no navegador quanto no servidor, HTTP/2 é ativado e usado.
Conclusão
Mensagens HTTP são a chave ao usar HTTP; sua estrutura é simples e elas são altamente
extensíveis. O mecanismo de enquadramento do HTTP/2 adiciona uma nova camada
intermediária entre a sintaxe HTTP/1.x e o protocolo de transporte subjacente, sem modificá-
lo fundamentalmente: construído sobre mecanismos provados.
https://developer.mozilla.org/pt-BR/docs/Web/HTTP/Mensagens 8/8