Sobes.tech
Intern

O que é HTTP?

sobes.tech IA

Resposta da IA

Protocolo de transferência de hipertexto. Protocolo de rede de nível de aplicação para troca de dados.

Características principais:

  • Arquitetura cliente-servidor: O cliente (por exemplo, um navegador) envia uma solicitação ao servidor, que processa a solicitação e devolve uma resposta.
  • Sem estado (stateless): Cada solicitação é processada de forma independente das anteriores. O estado da sessão é mantido em níveis superiores (por exemplo, usando cookies).
  • Utiliza TCP: O protocolo de transporte padrão é o TCP, que garante uma entrega fiável de dados.
  • Porta 80: Porta padrão para HTTP.
  • Métodos de requisição (HTTP methods/verbs): Determinam o tipo de ação a ser realizada sobre o recurso.
    • GET: Solicitar dados do recurso especificado.
    • POST: Enviar dados para processamento ou criação de um novo recurso.
    • PUT: Atualizar um recurso existente ou criar um novo no URI especificado.
    • DELETE: Eliminar o recurso especificado.
    • PATCH: Atualização parcial do recurso.
    • HEAD: Solicitar os cabeçalhos de resposta, semelhante ao GET, mas sem corpo.
    • OPTIONS: Solicitar informações sobre os métodos disponíveis e outras opções de comunicação para o recurso alvo.
  • Códigos de estado de resposta (Status Codes): Números de três dígitos que indicam o resultado da requisição.
    • 1xx : Informativo
    • 2xx : Sucesso - 200 OK
    • 3xx : Redirecionamento
    • 4xx : Erro do cliente - 404 Not Found
    • 5xx : Erro do servidor - 500 Internal Server Error

Estrutura da mensagem HTTP:

Parte Requisição (Request) Resposta (Response)
Linha de início Método URI Versão HTTP (por exemplo, GET / HTTP/1.1) Versão HTTP Código de estado Frase de estado (por exemplo, HTTP/1.1 200 OK)
Cabeçalhos Par "Nome-Valor" (por exemplo, Host: example.com) Par "Nome-Valor" (por exemplo, Content-Type: text/html)
Linha vazia Separa os cabeçalhos do corpo. Separa os cabeçalhos do corpo.
Corpo Opcional. Contém dados para enviar (por exemplo, formulários). Opcional. Contém os dados solicitados (por exemplo, página HTML).

Exemplo de requisição HTTP:

GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

Exemplo de resposta HTTP:

HTTP/1.1 200 OK
Date: Tue, 25 Jun 2024 10:00:00 GMT
Server: Apache/2.4.1 (Unix)
Content-Type: text/html; charset=UTF-8
Content-Length: 1234

<!DOCTYPE html>
<html>
<head>
    <title>Página de índice</title>
</head>
<body>
    HelloWorld!
</body>
</html>

Utilizado para transmitir documentos hipermedia (HTML, imagens, vídeos) na World Wide Web. HTTPS é a versão segura do HTTP que utiliza criptografia (SSL/TLS).