boucle

Comment utiliser les données de publication cURL à partir d'un fichier

Comment utiliser les données de publication cURL à partir d'un fichier

cURL est un utilitaire de ligne de commande gratuit et open source utilisé pour transférer des données vers ou depuis un hôte distant avec une interaction minimale de l'utilisateur. cURL fonctionne avec les protocoles principaux tels que HTTP, FTP, SCP et SFTP.

Il permet aux utilisateurs de télécharger et de télécharger des données à l'aide de commandes uniques ou de scripts bash. Il fournit également des fonctionnalités telles que l'authentification de l'utilisateur, le tunneling proxy, le résumé de téléchargement, les téléchargements basés sur des formulaires, les certificats SSL et bien plus encore. Il est sûr de dire que cURL est plus qu'un client HTTP.

Ce didacticiel vous guidera à travers une fonctionnalité cURL qui permet aux utilisateurs d'effectuer des requêtes de publication HTTP à l'aide de données de fichier.

Avant de commencer, permettez-moi de mentionner qu'il ne s'agit pas d'un guide du débutant sur cURL ; vous avez besoin d'un certain savoir-faire préalable, en particulier une connaissance des protocoles réseau, des requêtes HTTP, etc.

Avant de pouvoir nous plonger dans l'utilisation de cURL pour effectuer des requêtes POST, commençons par configurer.

Comment installer cURL

Dans la plupart des cas, vous trouverez par défaut cURL installé dans les principales distributions Linux. Pour confirmer que vous avez cURL, utilisez la commande

curl --help

Si vous obtenez une erreur :

-bash : curl : commande introuvable

Vous devrez l'installer avant de continuer.

Utilisez le gestionnaire de packages par défaut pour terminer l'installation comme indiqué dans les commandes ci-dessous :

sudo apt-get mise à jour
sudo apt-get install curl -y

Avant de discuter de la manière de publier des données à partir d'un fichier avec cURL, permettez-moi de parler brièvement de la requête POST. Comme d'habitude, si vous êtes déjà familiarisé avec cela, vous pouvez passer à autre chose ; sinon reste dans les parages.

Demande cURL POST

La requête HTTP post est l'une des méthodes de requête HTTP/HTTPS les plus utilisées pour envoyer des données à un hôte distant afin de créer ou de mettre à jour une ressource.

À présent:

Veuillez ne pas confondre la méthode avec PUT ; bien qu'ils soient assez similaires, ils ont leurs différences.

Les données envoyées à l'aide d'une requête POST sont principalement stockées dans le corps de la requête HTTP.

Par exemple, considérons la requête POST ci-dessous qui envoie le nom d'utilisateur et le mot de passe ainsi que leurs valeurs.

POST /restreint/connexion.php HTTP/1.1 hôte : linuxhint.com Content-Type: application/x-www-form-urlencoded username=linuxhint&password=password

Pour envoyer la requête POST ci-dessus à l'aide de cURL, nous pouvons spécifier les commandes comme :

curl -x POST -d "username=linuxhint&password=password" https://linuxhint.com/restreint/connexion.php

Dans la commande ci-dessus, nous avons utilisé l'option -d pour indiquer à cURL d'inclure les en-têtes par défaut, qui est Content-Type : application/x-www-form-urlencoded

L'option -X spécifie la méthode de requête HTTP à utiliser, dans ce cas, la requête HTTP POST.

cURL Spécifiez le type de contenu

Dans certains cas, nous pourrions vouloir spécifier [explicitement] le Content-Type lors de l'envoi de la demande. L'entité Content-Type dans l'en-tête spécifie le type de média de la ressource que nous envoyons. Le type de média est également communément appelé type MIME.

Si vous souhaitez en savoir plus sur les types MIME, consultez la ressource fournie ci-dessous :

https://linkfy.vers/IANA-MIME-Types

Pour spécifier le Content-Type dans une requête cURL, nous pouvons utiliser le drapeau -H. Par exemple, envoyons MIME Type d'application/JSON.

curl -X POST -d "nom d'utilisateur": "linuxhint", "mot de passe": "mot de passe" -H "Type de contenu: application/json" https://linuxhint.com/restreint/connexion.php

Ce qui précède spécifie que nous voulons envoyer un objet JSON à l'URL fournie. Vous pouvez l'utiliser pour lire les valeurs d'un fichier JSON ou les envoyer sous forme brute.

Comment lire les données d'un fichier

Supposons que vous vouliez faire des demandes dans la ligne de commande en utilisant cURL, mais que vous ayez les données à envoyer stockées dans un fichier. Vous pouvez utiliser le Content-Type pour spécifier le type de média, puis passer le chemin du fichier contenant les données. Pour cet exemple, je vais illustrer en utilisant un objet JSON.

Le fichier JSON (données.json) contient les valeurs suivantes :


"nom d'utilisateur": "linuxhint",
"mot de passe": "mot de passe"

Pour envoyer ces données à partir d'un fichier JSON, nous pouvons utiliser le -d puis passer le nom du fichier comme indiqué dans la commande ci-dessous :

curl -X POST -H « Type de contenu : application/json » -d « @data.json" https://linuxhint.com/restreint/connexion.php

Vous pouvez également utiliser l'option -data-binary.

curl -X POST -H « Type de contenu : application/json » --data-binary « @/home/user/data.json" https://linuxhint.com/restreint/connexion.php

Vous pouvez également utiliser un fichier texte pour envoyer les données ; tout ce que vous devez spécifier est le Content-Type comme text/plain.

Par exemple, un fichier texte (données.txt) contenant les valeurs suivantes

username=linuxhint&password=mot de passe

À l'aide de la commande cURL, envoyez simplement la requête en tant que :

curl -X POST -H « Type de contenu : texte/plain » -d « données.txt" https://linuxhint.com/restreint/connexion.php

Vous pouvez utiliser d'autres types de fichiers que vous pouvez utiliser tels que XML, HTML et bien d'autres.

Conclusion

Dans ce tutoriel, nous avons expliqué comment faire des requêtes POST et transmettre des données dans différents formats. Il est bon de garder à l'esprit qu'en plus d'être très puissant, cURL est également très flexible. Il peut combiner une collection d'options dans une seule commande pour créer des requêtes puissantes. Pour plus d'informations, je recommande la documentation cURL car elle est bien écrite.

https://curl.se/docs/

Merci d'avoir lu et amusez-vous avec cURL.

Comment inverser le sens de défilement de la souris et des pavés tactiles dans Windows 10
Souris et Pavé tactiles rendent non seulement l'informatique facile, mais plus efficace et moins chronophage. Nous ne pouvons pas imaginer une vie san...
Comment changer la taille, la couleur et le schéma du pointeur et du curseur de la souris sous Windows 10
Le pointeur et le curseur de la souris dans Windows 10 sont des aspects très importants du système d'exploitation. Cela peut également être dit pour d...
Moteurs de jeux gratuits et open source pour le développement de jeux Linux
Cet article couvrira une liste de moteurs de jeux gratuits et open source qui peuvent être utilisés pour développer des jeux 2D et 3D sur Linux. Il ex...