Lição 1
Lendo comandos cURL
Identifique URL, método, headers, flags de corpo e aspas de shell antes da conversão.
Um comando cURL é ao mesmo tempo uma requisição HTTP e um comando de shell. Antes de convertê-lo, separe essas duas camadas.
curl -X POST "https://api.example.com/users" \
-H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"Ada"}'
A requisição HTTP contém:
- Método:
POST - URL:
https://api.example.com/users - Headers:
Authorization,Content-Type - Corpo:
{"name":"Ada"}
A camada de shell contém aspas, continuação de linha e regras de escape.
Posição da URL
A URL pode aparecer no final, perto do começo ou depois de --url:
curl --url "https://api.example.com/search?q=json"
Um conversor deve identificar a URL da requisição em vez de assumir que ela é sempre o último token.
Aspas importam
Aspas simples, aspas duplas e barras invertidas são interpretadas pelo shell antes de o cURL receber os argumentos. Um comando copiado da documentação pode ter sido escrito para Bash, zsh, PowerShell ou CMD. A conversão deve preservar os valores HTTP pretendidos, não os caracteres literais de aspas.
Flags de corpo mudam padrões
Quando cURL recebe -d, a requisição geralmente vira POST, a menos que outro método seja especificado. Esse padrão surpreende quem esperava GET.
Leia o comando em duas passagens: primeiro como sintaxe de shell, depois como requisição HTTP. A conversão fica mais segura quando essas camadas não se misturam.