Esse sistema é a base da comunicação que existe para sites e aplicações web
HTTP significa HyperText Transfer Protocol (Protocolo de transferência de Hipertexto). É um protocolo de transferência da camada de Aplicação (sétima e última camada) do modelo OSI (Open System Interconnection), utilizado para transferir dados na rede.
Esse sistema é a base da comunicação que existe para sites e aplicações web, que trazem em seu conteúdo hiperlinks, qualquer host que você hospede seu site ou webapp, possui um sistema projetado para receber solicitações HTTP. Portanto, o navegador que você usa é um cliente HTTP que envia solicitações para o server.
COMO FUNCIONA O HTTP
Um sistema de comunicação em rede possui diversos protocolos que trabalham em conjunto para o fornecimento de serviços. Para que o protocolo HTTP consiga transferir seus dados pela web, é necessário que os protocolos TCP e IP (Internet Protocol | Protocolo de Internet) tornem possível a conexão entre clientes e servidores através de sockerts TCP/IP.
MÉTODOS HTTP
O protocolo HTTP define um conflito de métodos de requisição que são usados para indicar a ação a ser executada para um dado recurso. Quando você vai fazer uma requisição, é preciso que você especifique qual o método será utilizado.
Esses métodos HTTP, também conhecidos como HTTP Verbs (verbos HTTP). Existem 8 métodos HTTP, mas apenas 5 são mais utilizados.
GET
Solicita a representação de um determinado recurso. O método get é amplamente usado em formulários web e também por um link em sua página HTML.
O método get utiliza a própria URL para enviar dados ao servidor, ele possui limite de capacidade no geral é de 255 caracteres e só aceita strings.3
POST
Esse método só pode ser gerado através de um formulário web ou por AJAX, com POST, podemos enviar informações um pouco maiores, como imagens. Ou seja, se tentarmos passar uma grande quantidade de informações via GET, algumas partes podem ser perdidas no caminho.
As informações enviadas no corpo (body) da requisição são utilizadas para criar um novo recurso. Também é responsável por fazer processamentos que não são diretamente relacionados a um recurso.
DELETE
Remove um recurso. Deve retornar o status 204 caso não exista nenhum recurso para a URI especificada.
PUT
Atualiza um recurso na URI especificada. Caso o recurso não exista, ele pode criar um. A principal diferença entre POST e PUT é que o primeiro pode lidar não somente com recursos, mas pode fazer processamento de informações, por exemplo.
HEAD
Retorna informações sobre um recurso. Na prática, funciona semelhante ao método GET, mas sem retornar o recurso no corpo da requisição. Também é considerado um método seguro.
Os outros métodos disponíveis são OPTIONS, TRACE e CONNECT. Em teoria, os servidores devem implementar os métodos GET e HEAD e, sempre que possível, o método OPTIONS.
RESPOSTAS HTTP
Os códigos de status das respostas HTTP indicam se uma requisição HTTP foi corretamente concluída ou não. Esses status são agrupados de uma maneira bem organizada e simples de entender:
» Respostas de informação 1xx (100 – 199);
» Respostas de sucesso 2xx (200 – 299);
» Redirecionamentos 3xx (300 – 399);
» Erros client-side 4xx (400 – 499);
» Erros server-side 5xx (500 – 599)
Você com certeza já deve ter se deparado com o erro 404 – Not Found, ou ter sido redirecionado para uma URL atualizada, logo após entrar em um site, certo? Isso se deve ou http 301 – Moved Permanently, que é muito utilizado por recomendação da galera do Marketing Digital.
Esses status também chamados de respostas http, são bem familiares para desenvolvedores web, ou até mesmo para usuários que acessam diversos sites e webapps.
Conheça os status mais comuns
Status-code e Reason-phrase | Tradução das respostas |
100 – Continue | Continuar |
101 – Switching Protocols | Mudando Protocolos |
102 – Processing | Processando |
200 – ok | ok |
201 – Created | Criado |
202 – Accepted | Aceito |
203 – Non-Authoritative | Não-autorizado |
204 – Not Content | Nenhum Conteúdo |
205 – Reset Content | Restar Conteúdo |
300 – Multiple Choices | Múltipla Escolha |
301 – Moved Permanently | Movido Permanentemente |
302 – Found | Encontrado |
303 – See Other | Veja outro |
304 – Not Modified | Não modificado |
305 – Use Proxy | Use Proxy |
306 – Proxy Switch | Proxy Trocado |
400 – Bad Request | Solicitação Invalidade |
401 – Unauthorized | Não Autorizado |
402 – Payment Required | Pagamento Necessário |
403 – Forbidden | Proibido |
404 – Not Found | Não Encontrado |
405 – Method Not Allowed | Método não Permitido |
406 – Not Acceptable | Não aceito |
407 – Proxy Authentication | Autenticação de Proxy Necessária |
408 – Request Time-out | Tempo de solicitação esgotado |
410 – Gone | Perdido |
411 – Length Required | Duração Necessária |
412 – Precondition Failed | Falha de pré-condição |
413 – Request Entity Too Large | Solicitação da entidade muito extensa |
414 – Request-URL Too Large | Solicitação por URL muito extensa |
500 – Internal Server Error | Erro Interno no Servidor |
501 – Not Implemented | Não implementado |
502 – Bad Gateway | Porta de Entrada ruim |
503 – Service Unavailable | Serviço Indisponível |
504 – Gateway Time-out | Tempo Limite do Gateway |
505 – HTTP Version Not Supported | Versão do HTTP não Suportada |
Status-code e Reason-phrase | Tradução das respostas |
100 – Continue | Continuar |
101 – Switching Protocols | Mudando Protocolos |
102 – Processing | Processando |
200 – ok | ok |
201 – Created | Criado |
202 – Accepted | Aceito |
203 – Non-Authoritative | Não-autorizado |
204 – Not Content | Nenhum Conteúdo |
205 – Reset Content | Restar Conteúdo |
300 – Multiple Choices | Múltipla Escolha |
301 – Moved Permanently | Movido Permanentemente |
302 – Found | Encontrado |
303 – See Other | Veja outro |
304 – Not Modified | Não modificado |
305 – Use Proxy | Use Proxy |
306 – Proxy Switch | Proxy Trocado |
400 – Bad Request | Solicitação Invalidade |
401 – Unauthorized | Não Autorizado |
402 – Payment Required | Pagamento Necessário |
403 – Forbidden | Proibido |
404 – Not Found | Não Encontrado |
405 – Method Not Allowed | Método não Permitido |
406 – Not Acceptable | Não aceito |
407 – Proxy Authentication | Autenticação de Proxy Necessária |
408 – Request Time-out | Tempo de solicitação esgotado |
410 – Gone | Perdido |
411 – Length Required | Duração Necessária |
412 – Precondition Failed | Falha de pré-condição |
413 – Request Entity Too Large | Solicitação da entidade muito extensa |
414 – Request-URL Too Large | Solicitação por URL muito extensa |
500 – Internal Server Error | Erro Interno no Servidor |
501 – Not Implemented | Não implementado |
502 – Bad Gateway | Porta de Entrada ruim |
503 – Service Unavailable | Serviço Indisponível |
504 – Gateway Time-out | Tempo Limite do Gateway |
505 – HTTP Version Not Supported | Versão do HTTP não Suportada |
Separamos um post que fala sobre os principais erros HTTP, suas possíveis causas e como pode resolvê-los. Os 5 erros HTTP Mais Comuns
Escrito por: Alisson Julio Silveira
Desenvolvedor WordPress Junior – Studio Silver