Intern
Que tipos de pedidos HTTP existem?
sobes.tech IA
Resposta da IA
Principais tipos de pedidos HTTP: GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, TRACE, CONNECT.
Descrição dos mais comuns:
- GET: Solicita a visualização de um recurso especificado. Pedidos com este método devem obter apenas dados.
- POST: Envia dados para serem processados por um recurso específico. Um resultado comum é uma alteração de estado ou efeitos colaterais no servidor.
- PUT: Substitui todas as visualizações atuais do recurso alvo pelos dados do corpo do pedido.
- DELETE: Remove o recurso especificado.
- PATCH: Aplica modificações parciais ao recurso.
- HEAD: Solicita os cabeçalhos como
GET, mas sem o corpo da resposta. Usado para obter metadados. - OPTIONS: Descreve os parâmetros de comunicação para o recurso alvo.
- CONNECT: Transforma a conexão solicitada em um proxy TCP/IP transparente.
- TRACE: Realiza um teste de feedback no caminho para o recurso alvo.
Diferenças entre GET e POST:
| Característica | GET | POST |
|---|---|---|
| Objetivo | Obter dados | Enviar dados para processamento |
| Transmissão de dados | Via parâmetros URL (Query String) | Via o corpo do pedido |
| Segurança | Idempotente (requisições repetidas não mudam o estado) | Não idempotente |
| Visibilidade dos dados | Visíveis na URL, salvos no histórico do navegador, logs do servidor | Não visíveis na URL, não salvos no histórico do navegador |
| Tamanho dos dados | Limitado pelo comprimento da URL | Sem restrições (ou muito grandes) |
| Cache | Pode ser cacheado | Não cacheado por meios básicos |
| Favoritos | Pode adicionar uma página com parâmetros GET aos favoritos | Não (para métodos normais de envio de formulários) |
Exemplo de uso de GET em PHP:
<?php
// Obter o parâmetro 'id' da URL
$userId = $_GET['id'];
echo "ID do usuário: " . htmlspecialchars($userId);
?>
Exemplo de uso de POST em PHP (processamento de dados de formulário):
<?php
// Verificar se a requisição foi por método POST
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
// Obter dados do corpo da requisição
$username = $_POST['username'];
$password = $_POST['password'];
// Processar os dados (por exemplo, salvar em banco de dados)
echo "Nome de usuário: " . htmlspecialchars($username) . "<br>";
echo "Senha recebida.";
}
?>