Publicado por CodeWLF
O Hypertext Transfer Protocol (HTTP) é o fundamento da Web. É o protocolo que permite que os navegadores da Web se comuniquem com os servidores da Web e retornem páginas da Web, imagens, vídeos e outros conteúdos. O HTTP é um protocolo sem estado, o que significa que não mantém informações sobre solicitações anteriores. Cada solicitação é tratada como independente das outras. Este design torna o HTTP altamente escalável e eficiente, mas também pode torná-lo menos robusto. Por exemplo, um servidor da Web que precise rastrear o estado do usuário precisa usar outros métodos, como cookies.
O HTTP é um protocolo cliente-servidor. Isso significa que existe um cliente (como um navegador da Web) que inicia a solicitação e um servidor que responde à solicitação. O cliente envia uma solicitação ao servidor, que então processa a solicitação e envia uma resposta ao cliente. O HTTP é um protocolo baseado em texto, o que significa que as solicitações e respostas são codificadas em texto. Isso o torna fácil de ler e depurar.
A arquitetura cliente-servidor
A arquitetura cliente-servidor é um modelo de programação de computadores distribuída em que as tarefas são divididas entre os fornecedores de serviços (servidores) e os solicitantes de serviços (clientes). Os servidores executam os programas e fornecem os serviços, enquanto os clientes fazem solicitações aos servidores para os serviços. Os clientes e servidores podem estar em computadores separados ou no mesmo computador.
A arquitetura cliente-servidor é usada em muitas aplicações diferentes, como a Web, e-mail e banco de dados. Ele fornece uma série de vantagens, incluindo:
A arquitetura cliente-servidor também tem algumas desvantagens, incluindo:
Métodos HTTP
Os métodos HTTP são os verbos que são usados para especificar a ação a ser executada em um recurso. Os métodos HTTP mais comuns são:
Cabeçalhos HTTP
Os cabeçalhos HTTP são pares de nome-valor que fornecem informações adicionais sobre a solicitação ou resposta. Os cabeçalhos são usados para especificar coisas como o tipo de conteúdo, a codificação de caracteres e o comprimento do conteúdo. Os cabeçalhos HTTP são uma parte essencial do protocolo HTTP, pois fornecem um mecanismo para os clientes e servidores se comunicarem entre si.
Os cabeçalhos HTTP são uma parte importante das solicitações e respostas HTTP. Os clientes os usam para fornecer informações adicionais sobre a solicitação, como o tipo de conteúdo da solicitação ou o idioma preferido do cliente. Os servidores os usam para fornecer informações adicionais sobre a resposta, como o tipo de conteúdo da resposta ou o comprimento da resposta. Os cabeçalhos HTTP também podem ser usados para autenticação, cache e outras finalidades.
Códigos de status HTTP
Os códigos de status HTTP são usados para indicar o resultado de uma solicitação. Os códigos de status HTTP são números de três dígitos que são divididos em cinco classes:
Cookies
Os cookies são pequenos pedaços de dados que são armazenados no navegador da Web do cliente. Os cookies são frequentemente usados para rastrear o estado do usuário entre solicitações. Os cookies são usados pelos servidores da Web para rastrear o estado do usuário, como o conteúdo de um carrinho de compras ou a identidade do usuário. Os cookies são armazenados no navegador da Web do cliente e são enviados de volta ao servidor da Web com cada solicitação subsequente.
Sessões
As sessões são usadas para rastrear o estado do usuário entre solicitações. As sessões são frequentemente usadas para rastrear o estado do usuário entre solicitações. Diferentemente dos cookies, as sessões são armazenadas no servidor da Web. Quando um usuário solicita um recurso, o servidor da Web cria uma nova sessão para o usuário. Cada sessão tem um ID exclusivo que é usado para rastrear o estado do usuário. Quando o usuário faz outra solicitação, ele envia o ID da sessão de volta ao servidor da Web. O servidor da Web então usa o ID da sessão para recuperar o estado do usuário e atender à solicitação.
Conclusão
O HTTP é um protocolo essencial da Web que permite que navegadores da Web e servidores da Web se comuniquem entre si. É um protocolo cliente-servidor que usa uma variedade de métodos, cabeçalhos e códigos de status para fornecer informações adicionais sobre a solicitação ou resposta. O HTTP também usa cookies e sessões para rastrear o estado do usuário entre solicitações.
Artigos Relacionados
Leia mais no CodeWLF ou explore nosso Blog.
Explore mais artigos em CodeWLF Blog.