Parte 1: Protocolo HTTP
William Dantas
Posted on April 17, 2024
Olá! Aqui é meu primeiro post e apenas vou dissecar um pouco sobre o protocolo HTTP.
Requisitos
- Conhecimento básico em terminal
- Noções em Node.js
Conhecendo o HTTP
Com uma página aberta em um navegador, ao inspecionar um elemento notamos que caímos no famoso devtools. Na parte superior podemos selecionar a aba Network
ou Rede
onde encontraremos uma área em branco onde serão exibidos diversos logs com informações e mensagens do HTTP. Ao filtrar somente por requisições FETCH/XHR
, teremos então somente os endpoint chamados para a api, sem a presença de arquivos como html, css, js, entre outros.
Ao realizar o login, notamos que na mesma listagem aparece o endpoint, informando o nome pra onde chamou na API.
No caso aqui é uma API REST.
Ao clicar notamos diversas informações.
Na aba de HEADERS temos alguns itens que iremos abordar num futuro que são:
- Request URL
- Request Method
- Status Code
Existem outras, mas essas são geralmente as mais observadas.
Na aba de PAYLOAD temos um JSON que corresponde exatamente as informações preenchidas no frontend pelo usuário
Com isso, observamos o HTTP sendo usado no frontend.
Para identificar o HTTP trabalhando no backend, basta ir ao terminal local que irá aparecer um log como:
POST /public/login 200 1.474ms - 347
Note que o 200 apareceu aqui novamente, além de outras informações como o tempo total da requisição. O importante é o começo POST /public/login
.
Esta informação veio do frontend. O numero 200 foi gerado pelo backend. Isso evidencia que o HTTP é sempre uma interação entre duas entidades, o cliente e o servidor.
Então, aqui vimos brevemente como o HTTP que corresponde a sigla Hypertext Transfer Protocol, ou seja, Protocolo de Transferência de Hipertexto, é usado para transferir dados na web.
É obrigatório que para o uso do HTTP, tenha duas entidades: um cliente e um servidor.
Arquitetura do HTTP
Alguns parâmetros do HTTP são perceptíveis no navegador, mas como ocorre essa comunicação? A resposta está na camada de aplicação da arquitetura da internet.
Essa camada é composta pelo browser, então toda vez que estamos utilizando aplicativos ou navegadores, estamos utilizando esta camada.
Existem regras para que aconteça essa comunicação. Se o cliente mandar uma mensagem e o servidor não responder, não funciona.
Regras do protocolo HTTP
A comunicação sempre envolve duas entidades: um cliente e um servidor.
A conversa é iniciada pelo cliente. O servidor nunca inicia a comunicação enviando informações ao cliente sem ser solicitado.
Depois que o cliente envia uma mensagem, o servidor responde com as informações solicitadas.
O HTTP opera sobre o TCP (Transmission Control Protocol), que é um protocolo da camada de transporte essencial para garantir a entrega bem-sucedida das mensagens HTTP ao destinatário.
Basicamente todo dispositivo que se conecta à internet possivelmente utiliza o protocolo HTTP (existem exceções).
Conclusão
Em resumo, o HTTP é um protocolo essencial que opera na camada de aplicação da arquitetura da internet. Ele facilita a comunicação entre o cliente (geralmente um navegador web) e o servidor, permitindo a troca de informações na forma de documentos HTML, imagens, arquivos de vídeo, entre outros. O HTTP é um protocolo sem estado, tratando cada solicitação de forma independente. Este post explorou como o HTTP é usado tanto no frontend quanto no backend, e discutiu algumas das regras fundamentais que governam a comunicação HTTP. Embora este post tenha fornecido uma visão geral do HTTP, há muito mais a aprender sobre este protocolo crucial e como ele suporta a comunicação na web.
--
Para manter este post conciso e útil, vou encerrar aqui nossa exploração do Protocolo HTTP. No entanto, há muito mais a discutir sobre esse tema fascinante. Nos próximos posts, pretendo abordar questões como alternativas quando o HTTP pode não ser a melhor opção, a distinção entre URL, URI e DNS, e técnicas para depurar métodos HTTP de forma eficaz.
Fique ligado para as próximas atualizações, enquanto continuamos a desvendar os mistérios da comunicação na web juntos.
Até breve! Se você gostou deste post, por favor, deixe um like.
Posted on April 17, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.