HTTP *
HTTP (Hypertext Transfer Protocol) é o protocolo subjacente usado pela World Wide Web para transferir dados. É um
sem estado ,
cliente-servidor protocolo.
As mensagens HTTP são trocadas entre um cliente (por exemplo, um navegador da web) e um servidor (por exemplo, um servidor da web).
O cliente envia uma solicitação HTTP ao servidor e o servidor responde com uma resposta HTTP.
Estrutura da solicitação HTTP A estrutura de uma solicitação HTTP consiste nos seguintes componentes:
*
Linha de partida :a linha inicial de uma solicitação HTTP consiste na versão HTTP, no método HTTP e no caminho ou URL da solicitação.
Por exemplo:
```
OBTER /index.html HTTP/1.1
```
*
Cabeçalhos :os cabeçalhos de uma solicitação HTTP contêm informações sobre o cliente, a solicitação e o recurso solicitado. Alguns cabeçalhos comuns incluem:
- User-Agent:Contém informações sobre o agente do usuário (por exemplo, navegador da web) que está fazendo a solicitação.
- Host:especifica o nome do host e a porta do servidor para o qual a solicitação está sendo enviada.
- Aceitar:especifica os tipos MIME de respostas que o cliente pode aceitar.
- Content-Type:especifica o tipo MIME do corpo da solicitação.
*
Corpo :o corpo de uma solicitação HTTP pode conter dados que o cliente está enviando ao servidor. Por exemplo, ao enviar um formulário, os dados do formulário normalmente são incluídos no corpo da solicitação.
Estrutura da resposta HTTP A estrutura de uma resposta HTTP consiste nos seguintes componentes:
*
Linha de partida :a linha inicial de uma resposta HTTP consiste na versão HTTP, no código de status e na mensagem de status.
Por exemplo:
```
HTTP/1.1 200 OK
```
- O código de status indica se a solicitação foi bem-sucedida (por exemplo, 200 OK) ou se houve um erro (por exemplo, 404 Not Found, 500 Internal Server Error).
- A mensagem de status é uma descrição legível do código de status.
*
Cabeçalhos :os cabeçalhos de uma resposta HTTP contêm informações sobre o servidor, a resposta e o recurso solicitado. Alguns cabeçalhos comuns incluem:
- Servidor:Contém informações sobre o servidor que está respondendo à solicitação.
- Content-Type:especifica o tipo MIME do corpo da resposta.
- Content-Length:especifica o comprimento em bytes do corpo da resposta.
*
Corpo :o corpo de uma resposta HTTP pode conter o recurso solicitado ou outros dados que o servidor está fornecendo ao cliente. Por exemplo, ao solicitar uma página HTML, o corpo da resposta conterá o código HTML da página.