Alternativa D - Podem ser usados os verbos POST ou PUT, sendo este último mais recomendado, além de utilizado para esse fim.
Introdução
No contexto do desenvolvimento web e das arquiteturas REST, os métodos HTTP (também chamados de verbos) possuem semânticas específicas. Eles definem a ação que deve ser realizada em um recurso no servidor. Para operações de modificação de dados, nem todos os verbos são adequados.
Desenvolvimento
Os principais verbos utilizados em APIs seguem padrões estabelecidos:
- GET: Utilizado exclusivamente para recuperar informações. Não deve alterar o estado do servidor.
- POST: Geralmente usado para criar novos recursos ou executar ações que não sejam criptograficamente idêmpotentes. Também pode ser usado para atualizações parciais.
- PUT: Utilizado para atualizar ou substituir completamente um recurso existente. É considerado idêmpotente (fazer a mesma requisição múltiplas vezes tem o mesmo efeito).
- DELETE: Utilizado para remover recursos.
Quando o objetivo é a atualização de dados, o ideal é evitar o uso de GET, pois isso viola o princípio de segurança do método. O uso de PUT é frequentemente preferido para atualizações completas devido à sua natureza idêmpotente, enquanto POST é aceito para atualizações parciais ou quando a lógica de negócio exige processamento complexo.
Análise
Vamos analisar cada alternativa com base nos conceitos acima:
- Alternativa A: Incorreta. Nem todos os verbos podem ser usados; usar GET para atualizar dados é má prática de arquitetura.
- Alternativa B: Incorreta. O método GET é destinado apenas à leitura de dados, nunca à escrita ou alteração.
- Alternativa C: Incorreta. Embora o HTTPS garanta a segurança da transmissão, ele não altera a semântica correta do verbo HTTP. O protocolo não resolve a questão funcional do método.
- Alternativa D: Correta. Tanto POST quanto PUT são métodos seguros para modificação. O PUT é muitas vezes mais recomendado para atualizações diretas de recursos existentes por garantir idempotência.
- Alternativa E: Incorreta. Inclui o GET, que não deve ser utilizado para atualizações de dados.
Conclusão
Para atualizar dados em uma aplicação web seguindo boas práticas de REST, utilizam-se predominantemente os métodos POST ou PUT. Portanto, a alternativa D é a resposta correta.