HTTP

Hypertext Transfer Protocol (HTTP) é um protocolo de camada de aplicação para transmissão de documentos hipermídia, como o HTML. Foi desenvolvido para comunicação entre navegadores web e servidores web, porém pode ser utilizado para outros propósitos também. Segue um modelo cliente-servidor clássico, onde um cliente abre uma conexão, executa uma requisição e espera até receber uma resposta. É também um protocolo sem estado ou stateless protocol, que significa que o servidor não mantem nenhum dado entre duas requisições (state). Apesar de ser frequentemente baseado em uma camada TCP/IP, pode ser utilizado em qualquer camada de transporte confiável, ou seja, um protocolo que não perde mensagens silenciosamente como o UDP.

Tutoriais

Aprenda como usar HTTP com guias e tutoriais.

Visão geral do HTTP

Apresenta os recursos básicos do protocolo cliente-servidor: o que pode fazer e quais seus usos.

Cache HTTP

O Cache é muito importante para websites rápidos. Este artigo descreve diferentes métodos de cache e como utilizar os cabeçalhos HTTP para controlá-los.

Cookies HTTP

O funcionamento dos cookies é definido pela RFC 6265. Ao receber uma requisição HTTP, o servidor pode enviar um cabeçalho Set-Cookie com a resposta. Depois, o cliente retorna o valor do cookie a cada requisição ao mesmo servidor na forma de um cabeçalho Cookie HTTP. O cookie também pode ser configurado para expirar em um determinado tempo ou permanecer restrito a um domínio ou endereço específicos.

Controle de Acesso HTTP (CORS)

As requisições CORS são requisições HTTP de recursos de domínios diferentes do domínio que está fazendo a requisição. um exemplo é um site A (SiteA.com) realizando uma requisição de uma imagem por meio de um elemento img para um site B (SiteB.com/img.png). Hoje em dia encontramos o CORS em grande maioria das páginas webs, carregando scripts, imagens, folhas de estilos, etc.

Dicas de cliente HTTP

Dicas do cliente são um conjunto de cabeçalhos de resposta que um servidor pode usar para solicitar proativamente informações de um cliente sobre o dispositivo, a rede, o usuário e as preferências específicas do agente do usuário. O servidor pode então determinar quais recursos enviar, com base nas informações que o cliente escolher fornecer.

Evolução do HTTP

Uma breve descrição das mudanças que ocorreram no HTTP em versões mais antigas para o moderno HTTP/2 em diante.

Diretrizes de segurança da Web da Mozilla

uma coleção de dicas para ajudar as equipes operacionais na criação de aplicativos Web seguros.

Mensagens HTTP

Descreve os tipos e a estrutura das diferentes mensagens do HTTP/1.x e HTTP/2.

Uma sessão típica em HTTP

Mostra e explica o fluxo de uma sessão HTTP normal.

Gerenciamento de conexões em HTTP/1.x

Descreve os três modelos de conexão disponíveis no HTTP/1.x, seus pontos fortes e fracos.

Controlando a pré-busca de DNS

O Firefox e outros navegadores atuais utilizam a pré-busca de DNS, ou seja, o navegador faz a busca do nome do domínio nos links contidos numa página antes que o recurso seja requisitado, como por exemplo imagens, scripts e folhas de estilo. Isto tudo ocorre em segundo plano, para que quando o recurso necessite ser carregado, o endereço DNS já esteja resolvido. Isto diminui a latência quando, por exemplo, um usuário clica em um link.

Referências

Navegue por uma detalhada documentação de referências em HTTP.

Cabeçalhos HTTP

As mensagens de cabeçalho HTTP são utilizadas para realizar a descrição de algum recurso ou comportamento do cliente ou servidor. Propriedades personalizadas nos cabeçalhos utilizam o prefixo 'X-' ; Outras no registro IANA, cujo conteúdo original foi definido na RFC 4229. IANA também mantém o registro de novas propostas para mensagens de cabeçalhos HTTP.

Métodos de requisição HTTP

As mais diferentes requisições podem ser utilizadas pelos métodos de requisições HTTP: GET e POST, mas também algumas requisições menos comuns pelos métodos OPTIONS, DELETE ou TRACE.

Respostas de códigos de status em HTTP

Os códigos de status do HTTP indicam quando uma requisição foi completada. Códigos de status são agrupados em cinco classes: Informações, respostas, respostas de sucesso, redirecionamentos, erros de cliente e erros de servidor.

Diretivas CSP

Os campos de cabeçalho de resposta Content-Security-Policy permitem que os administradores do site controlem os recursos que o agente do usuário pode carregar para uma determinada página. Com algumas exceções, as políticas envolvem principalmente a especificação de origens de servidor e endpoints de script.

Ferramentas & recursos

Ferramentas que irão lhe ajudar a testar e debugar as suas requisições HTTP.

Ferramentas de desenvolvedores Firefox

Network monitor

Observatório Mozilla

Um projeto desenvolvido para ajudar desenvolvedores, administradores de sistema e profissionais de segurança a configurar seus sites com segurança.

RedBot

Uma ferramenta para visualizar seus Headers relacionados em cache.

Como os navegadores funcionam (2011)

Um artigo bem abrangente sobre a parte interna dos navegadores e os fluxos de requisições via protocolo HTTP. Um artigo que todos os desenvolvedores web, com certeza, deveriam ler.