POST avec -d
Leçon 32 sur 47 du cours Réseautage avec le terminal de Coddy.
Jusqu’à présent, chaque requête demandait quelque chose. -d envoie quelque chose à la place :
curl -s -d 'name=ada' http://127.0.0.1:9122/signupDeux choses se produisent dès que vous l’ajoutez. curl bascule de la méthode GET à POST sans qu’on le lui demande, et il joint ce que vous lui avez fourni au corps de la requête.
Ainsi, -d ne signifie pas simplement « ajouter des données » : il modifie le type de requête. Si vous voulez une requête POST sans aucun corps, vous devez écrire vous-même -X POST.
Alors que GET place ses paramètres dans l’URL, où tout le monde peut les voir et les enregistrer, POST les place dans le corps. C’est pourquoi les formulaires contenant des mots de passe utilisent POST : non pas parce que le corps est chiffré — il ne l’est pas —, mais parce que les URL se retrouvent dans l’historique du navigateur, les journaux du serveur et les en-têtes de référent.
Défi
ExpertEnvoyez votre premier POST et relisez ce que le serveur a reçu.
- Démarrez l’écouteur de capture sur le port 9122 (il répond 200 et écrit la requête dans
req.txt) - Effectuez un POST de
name=adavershttp://127.0.0.1:9122/signup - Affichez la première ligne de
req.txt
Sortie attendue :
POST /signup HTTP/1.1Donnez à curl
--max-time 3afin qu’il n’attende pas indéfiniment, et ignorez sa sortie.
Essayez vous-même
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Réseautage avec le terminal
1Comment les réseaux communiquent
Qu’est-ce qu’un réseauClients et serveursAdresses IPVotre première requête4Est-il joignable ?
ICMP et pingLire la sortie de pingQuand ping mentRefusé ou délai d’attente dépasséRécapitulatif : joignabilité7Envoyer des données
POST avec -dCe que -d envoie réellementEncodage de formulaireEnvoyer du JSONPUT et DELETERécapitulatif : écrire des données2Noms et DNS
Pourquoi les noms existentLe fichier hostsRechercher un nomTypes d’enregistrementsRécapitulatif : les noms3Ports et sockets
Qu’est-ce qu’un portPorts bien connusLocalhostÉcoute ou connexionRécapitulatif : les ports6curl en profondeur
Afficher les en-têtesEnregistrer les réponsesEn-têtes personnalisésStatut et duréeCodes de sortie de curlRécapitulatif : options de curl9Authentification et débogage
Clés API et BearerL’agent utilisateurDélais d’attente et nouvelles tentativesLire un échecRécapitulatif : débogageEntraînez-vous par vous-même : Playground Terminal