O que -d realmente envia
Lição 33 de 47 do curso Redes com o Terminal da Coddy.
A linha de requisição informou o método. Agora observe o corpo, que é a última coisa na requisição, depois da linha em branco.
O que quer que você passe para -d é enviado literalmente. -d 'name=ada' coloca exatamente name=ada na transmissão. Várias flags -d são unidas com &, então -d 'a=1' -d 'b=2' envia a=1&b=2.
O curl também adiciona um cabeçalho Content-Length contando esses bytes, porque o servidor precisa saber onde o corpo termina. Você não precisa calculá-lo, o que é uma das conveniências discretas de usar um cliente em vez de nc.
Ler o corpo de volta da transmissão é a maneira mais rápida de resolver qualquer discussão sobre o que um cliente realmente está enviando.
Desafio
EspecialistaLeia seu próprio corpo de volta da rede.
- Inicie o listener de captura na porta 9123
- Envie por POST os dois campos
name=adaerole=eng, como duas flags-dseparadas - Imprima a última linha de
req.txt, que é o corpo
Saída esperada:
name=ada&role=engExperimente você mesmo
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Redes com o Terminal
4É Possível Alcançá-lo?
ICMP e pingLendo a Saída do PingQuando o Ping EnganaRecusado ou ExpiradoRecapitulação: Acessibilidade7Enviando Dados
POST com -dO que -d realmente enviaCodificação de formuláriosEnviando JSONPUT e DELETERecapitulação: escrevendo dados2Nomes e DNS
Por que os nomes existemO arquivo hostsConsultando um nomeTipos de registrosRecapitulação: nomes3Portas e Sockets
O que é uma portaPortas conhecidasLocalhostEscutando vs. conectandoRecapitulação: portas6curl em Detalhes
Visualizando os CabeçalhosSalvando RespostasCabeçalhos PersonalizadosStatus e TempoCódigos de Saída do curlRecapitulação: Opções do curl9Autenticação e Depuração
Chaves de API e BearerO User AgentTimeouts e Novas TentativasLendo uma FalhaRevisão: DepuraçãoPratique por conta própria: Playground de Terminal