HTTP

o que é?

É a base de qualquer troca de dados na Web e um protocolo cliente-servidor, o que significa que as requisições são iniciadas pelo destinatário, geralmente um navegador da Web.

Oque é request/response

Request: é o pedido que um cliente realiza a nosso servidor

Response: é a resposta que o servidor envia ao cliente. Essa resposta pode conter os dados que realmente o cliente esperava receber ou uma resposta informando que alguma coisa deu errado.

Request e response HTTP compartilham estrutura similar e são compostas de:

1. Uma linha inicial (start-line) que descreve as requisições a serem implementadas, ou seu status de sucesso ou falha. Esta linha inicial é sempre uma única.
2. Um conjunto opcional de cabeçalhos HTTP especificando a requisição, ou descrevendo o corpo incluso na mensagem.
3. Uma linha em branco (empty line) indicando que toda meta-informação para a requisição já foi enviada.
4. Um corpo (body) contendo dados associados à requisição (como o conteúdo de um formulário HTML), ou o documento associado à resposta.

Principais métodos de requisição

GET, HEAD, POST , PUT, DELETE, CONECT, OPTIONS, TRACE E PATCH.

Características

Propiciam busca de informação e atualização up-date. as mensagens são enviadas em um formato similar aos utilizados pelo correio eletrônico da Internet e pelo MIME (Multiporpose Internet Mail Extensions)

Resposta

Consiste em três componentes: Status-protocolo Descrição-código, Cabeçalhos de resposta, Corpo da entidade.

O que significa a frase "HTTP não guarda estado"?

Significa que não existe uma relação entre duas requisições sendo feitas através da mesma conexão. Isso traz um problema imediato para usuários que interagem com algumas páginas de forma coerente, por exemplo, usando um carrinho de compras de e-commerces*. Mas como o fundamento básico do HTTP é não manter estados, cookies HTTP permitem que as sessões tenham estados.