brève introduction
boucle est couramment utilisé l'outil de ligne de commande, utilisée pour demander au serveur Web. Son nom est le sens du client (client) de l'outil d'URL.
Il est très puissant, autant que des dizaines de paramètres de ligne de commande. Si QUALIFIÉ alors Postman peut remplacer ce type d'interface graphique.
Cet article décrit ses principaux paramètres de ligne de commande, comme une référence quotidienne pour un accès facile. Principalement traduit de « boucle Cookbook » . Pour économiser de l' espace, les exemples suivants ne comprennent pas l' exécution de sortie, les débutants peuvent regarder mon écriture précédente « boucle tutoriel pour les débutants » .
En l'absence de paramètres, boucle est d'émettre une requête GET.
$ curl https://www.example.com
La commande ci - dessus pour www.example.com
émettre une requête GET, le serveur de contenu sera retourné dans la sortie de ligne de commande.
-UNE
-A
Paramètre spécifie l' en- tête de l' agent utilisateur du client, à savoir User-Agent
. boucle par défaut chaîne de l' agent utilisateur curl/[version]
.
$ curl -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36' https://google.com
La commande ci - dessus User-Agent
changer le navigateur Chrome.
$ curl -A '' https://google.com
La commande ci - dessus effacera la User-Agent
tête.
Vous pouvez également -H
modifier les paramètres spécifient directement en- tête User-Agent
.
$ curl -H 'User-Agent: php/1.0' https://google.com
-b
-b
paramètres des cookies utilisés pour envoyer au serveur.
$ curl -b 'foo=bar' https://google.com
La commande ci - dessus génère un en- tête Cookie: foo=bar
, transmettre au serveur un nom foo
, une valeur bar
de cookie.
$ curl -b 'foo1=bar;foo2=bar2' https://google.com
La commande ci-dessus transmet deux biscuits.
$ curl -b cookies.txt https://www.google.com
La commande ci - dessus lit les fichiers locaux cookies.txt
, qui sont les cookies (voir ensemble serveur -c
paramètres), et il envoie au serveur.
-c
-c
paramètres des cookies à un serveur de fichiers.
$ curl -c cookies.txt https://www.google.com
La commande ci - dessus répondra à serveur HTTP jeu de fichier texte Cookie écrit cookies.txt
.
-ré
-d
Les paramètres utilisés pour les données de transmission corps de requête POST.
$ curl -d'login=emma&password=123'-X POST https://google.com/login # 或者 $ curl -d 'login=emma' -d 'password=123' -X POST https://google.com/login
Utilisé -d
après les paramètres, en- tête de requête HTTP est automatiquement ajouté Content-Type : application/x-www-form-urlencoded
. Et automatiquement convertis méthodes de requête POST, peuvent être omis -X POST
.
-d
données de paramètres locaux peuvent être un fichier texte lu est transmis au serveur.
$ curl -d '@data.txt' https://google.com/login
La commande ci - dessus pour lire data.txt
le contenu d'un fichier, envoyés au serveur en tant que données de ceux - ci.
--data-urlencode
--data-urlencode
paramètres équivalents -d
, corps de la requête POST de transmission de données, à l' exception que les données d'encodage URL automatiquement transmis.
$ curl --data-urlencode 'comment=hello world' https://google.com/login
Dans le code ci - dessus, les données transmises hello world
a un espace entre, l' encodage d'URL est nécessaire.
-e
-e
Paramètre définit l' en- tête HTTP Referer
indiquant la source de la demande.
curl -e 'https://google.com?q=example' https://www.example.com
La commande ci - dessus en- Referer
tête est réglé https://google.com?q=example
.
-H
Les paramètres d' en - têtes ajoutant directement Referer
pour obtenir le même effet.
curl -H 'Referer: https://google.com?q=example' https://www.example.com
-F
-F
Les paramètres utilisés pour télécharger des fichiers binaires sur le serveur.
$ curl -F '[email protected]' https://google.com/profile
La commande ci - dessus ajoutera en- tête de requête HTTP Content-Type: multipart/form-data
, le fichier en photo.png
tant que file
champ à télécharger.
-F
Les paramètres peuvent être spécifiés de type MIME.
$ curl -F '[email protected];type=image/png' https://google.com/profile
La commande ci - dessus spécifie le type MIME image/png
, sinon il se recroquevillent le type MIME est défini application/octet-stream
.
-F
Les paramètres peuvent également spécifier le nom du fichier.
$ curl -F '[email protected];filename=me.png' https://google.com/profile
La commande ci - dessus, le fichier original est nommé photo.png
, mais le serveur reçoit un fichier nommé me.png
.
-G
-G
Les paramètres utilisés pour construire la chaîne de requête de l'URL.
$ curl -G -d 'q=kitties' -d 'count=20' https://google.com/search
La commande ci - dessus émettra une requête GET, URL est effectivement demandé https://google.com/search?q=kitties&count=20
. En cas d' omission --G
, il émettra une requête POST.
Si les besoins de données codées URL à combiner avec des --data--urlencode
paramètres.
$ curl -G --data-urlencode 'comment=hello world' https://www.example.com
-H
-H
Les paramètres sont ajoutés à l'en-tête de requête HTTP.
$ curl -H 'Accept-Language: en-US' https://google.com
La commande ci - dessus ajoute les en- têtes HTTP Accept-Language: en-US
.
$ curl -H 'Accept-Language: en-US' -H 'Secret-Message: xyzzy' https://google.com
Les deux commandes ci-dessus ajoutent en-têtes HTTP.
$ curl -d '{"login": "emma", "pass": "123"}' -H 'Content-Type: application/json' https://google.com/login
La commande ci - dessus ajoute - têtes de requête HTTP sont Content-Type: application/json
suivis par -d
les paramètres de données de transmission JSON.
-je
-i
Imprimez réponse serveur de paramètres en-têtes HTTP.
$ curl -i https://www.example.com
Après la réponse du serveur de commande ci-dessus est reçu, le premier signal de sortie des têtes de réponse du serveur, puis une ligne vide, puis la bande de source de sortie.
-JE
-I
paramètre de requête HEAD envoyé, le serveur retourne un en-tête HTTP au serveur d'impression.
$ curl -I https://www.example.com
La sortie de la réponse du serveur de commande ci-dessus à une requête HEAD.
--head
Équivalents aux paramètres -I
.
$ curl --head https://www.example.com
-k
-k
paramètre SSL spécifie la détection sautée.
$ curl -k https://www.example.com
La commande ci-dessus ne vérifie pas le certificat SSL du serveur est correct.
-L
-L
Les paramètres vont suivre les demandes redirections du serveur HTTP. par défaut CURL ne suit pas les redirections.
$ curl -L -d 'tweet=hi' https://api.twitter.com/tweet
--limit taux
--limit-rate
Permet de limiter la bande passante des requêtes et réponses HTTP pour simuler l'environnement à faible vitesse.
$ curl --limit-rate 200k https://google.com
La commande ci-dessus limite la bande passante de 200K octets par seconde.
-o
-o
Les paramètres seront enregistrés dans un serveur de fichiers pour répondre, ce qui équivaut à la wget
commande.
$ curl -o example.html https://www.example.com
La commande ci - dessus www.example.com
économiser example.html
.
-Le
-O
Le serveur répond avec des paramètres enregistrés dans un fichier, et la dernière partie de l'URL comme nom de fichier.
$ curl -O https://www.example.com/foo/bar.html
La commande ci - dessus sauvera le serveur pour répondre à un fichier nommé bar.html
.
-s
-s
Le paramètre ne sera pas des erreurs de sortie et des informations de progression.
$ curl -s https://www.example.com
Une fois l'erreur de commande ci-dessus se produit, aucun message d'erreur est affiché. Erreur ne se produit pas, il affichera les résultats correctement d'exploitation.
Si vous voulez boucle ne produit pas de sortie, vous pouvez utiliser la commande suivante.
$ curl -s -o /dev/null https://google.com
-S
-S
Paramètre spécifie que seuls les messages d'erreur de sortie, et habituellement -s
utilisés ensemble.
$ curl -s -o /dev/null https://google.com
La commande ci-dessus aucune sortie, sauf si une erreur se produit.
-u
-u
Les paramètres utilisés pour définir le nom d'utilisateur d'authentification du serveur et le mot de passe.
$ curl -u 'bob:12345' https://google.com/login
La commande ci - dessus définit le nom d'utilisateur bob
, mot de passe 12345
, puis dans l' en- tête HTTP Authorization: Basic Ym9iOjEyMzQ1
.
boucle à l'intérieur de l'URL peut identifier un nom d'utilisateur et mot de passe.
$ curl https://bob:[email protected]/login
La commande ci-dessus peut identifier l'URL d'un nom d'utilisateur et mot de passe, qui a été converti à l'intérieur de l'exemple en-tête HTTP.
$ curl -u 'bob' https://google.com/login
La commande ci-dessus ne définir un nom d'utilisateur, après l'exécution, boucle demandera à l'utilisateur d'entrer un mot de passe.
-v
-v
Sortie des paramètres entiers de processus de communication pour le débogage.
$ curl -v https://www.example.com
--trace
Les paramètres peuvent également être utilisés pour le débogage, mais également des données de sorties binaires brutes.
$ curl --trace - https://www.example.com
-X
-x
Paramètre spécifie les requêtes HTTP proxy.
$ curl -x socks5://james:cats@myproxy.com:8080 https://www.example.com
HTTP demande spécifiée par la commande ci - dessus myproxy.com:8080
est délivré proxy socks5.
Si vous ne spécifiez pas l'accord de l'agence, la valeur par défaut est HTTP.
$ curl -x james:cats@myproxy.com:8080 https://www.example.com
La commande ci-dessus, les demandes d'agent en utilisant le protocole HTTP.
-X
-X
La méthode de requête HTTP paramètres spécifie.
$ curl -X POST https://www.example.com
La commande ci - dessus les https://www.example.com
demandes émises POST.