Sobes.tech
Junior

Em que casos é aconselhável passar parâmetros através do GET e em que casos não deve fazê-lo?

sobes.tech IA

Resposta da IA

É aconselhável usar a transmissão de parâmetros via GET nos seguintes casos:

  • Obtenção de dados (leitura): As requisições GET são idempotentes e não devem alterar o estado no servidor. Este é o método principal para obter recursos ou informações.
  • Cache: Os navegadores e servidores proxy podem armazenar em cache as requisições GET, acelerando requisições subsequentes ao mesmo URI.
  • Criação de links: Os parâmetros na URL facilitam a criação de links diretos para uma visualização específica de dados ou resultados de pesquisa.
  • Pequena quantidade de dados: Ao transmitir uma pequena quantidade de dados não sensíveis.
  • Requisições compartilháveis: Quando o resultado da requisição pode ser facilmente compartilhado com outro usuário via link.

Não se deve usar a transmissão de parâmetros via GET nos seguintes casos:

  • Transmissão de dados sensíveis: Senhas, dados pessoais, tokens de autorização e qualquer outra informação que não deve ser visível na URL, no histórico do navegador ou nos logs do servidor.
  • Grande volume de dados: A URL tem uma limitação de comprimento (embora dependa do navegador/servidor, mas existe uma limite).
  • Alteração de estado no servidor: Requisições GET não devem causar alterações de estado (criação, atualização, exclusão de recursos). Para isso, usam-se os métodos POST, PUT, DELETE.
  • Download de arquivos: Transmitir conteúdo de arquivos via parâmetros de URL não é prático nem padronizado.
  • Emails com links para ações: Links em emails que realizam ações no servidor (por exemplo, cancelar inscrição) não devem usar GET para evitar execução acidental ao escanear o email com antivírus ou cliente de email.