Urlencode-Daten für den Curl-Befehl in Bash
curl
ist ein Linux-Befehlszeilendienstprogramm, das Daten von einer Maschine auf eine andere überträgt. Es kann mit mehreren Protokollen arbeiten, darunter HTTP
, DICT
, FILE
, FTP
, FTPS
, IMAP
, IMAPS
, POP3
usw.
In diesem Artikel erfahren Sie, wie wir Daten für den Befehl curl
in der Bash urlencodieren
können. Beginnen wir mit der Syntax des curl
-Befehls.
den curl
-Befehl in Bash
Die grundlegende Syntax des curl
-Befehls lautet wie folgt:
curl [URL] [option]
Beispiel:
curl http://example.com
Dieser Befehl zeigt den Inhalt von http://example.com
auf dem Linux-Terminal an.
curl
-Befehlsoptionen
Mit dem Befehl curl
können wir mehrere Optionen verwenden. Im Allgemeinen werden Optionen mit einem Bindestrich (-
) oder zwei Bindestrichen (--
) eingeleitet. Zum Beispiel kann der Befehl curl
mit einer Option wie folgt geschrieben werden:
curl -L [URL]
Ein curl
-Befehl mit mehreren Optionen kann wie folgt geschrieben werden:
curl -ELb [URL]
Oder
curl -E -L -b [URL]
curl
-d
oder --data
Option
Die Option -d
oder --data
mit dem Befehl curl
wird verwendet, um Daten als POST
-Anforderung an den Server zu senden. Zum Beispiel:
curl -d "p1=v1&p2=v2" [URL]
Oder
curl --data "p1=v1&p2=v2" [URL]
Dieser Befehl sendet Daten an die angegebene URL
. Beispielsweise ist der Wert des Parameters p1
v1
und der Wert des Parameters p2
ist v2
, was an den Server gesendet wird. Diese Parameter werden im reinen Binärformat gesendet.
curl
unterstützt ein anderes Format zum Senden der Daten an den Server. Zum Beispiel:
--data-ascii
funktioniert genauso wie die Option-d
oder--data
.- Die Option
--data-binary
wird verwendet, umPOST
-Daten im tatsächlichen Format, wie im Befehl angegeben, ohne Verarbeitung zu senden. - Die Option
--data-urlencode
sendetPOST
-Daten an den Server, indem URL-Codierung durchgeführt wird.
URL-Encode-Daten aus dem curl
-Befehl
curl
mit --data-urlencode
wird verwendet, um Daten an den Server zu senden, indem URL-Codierung durchgeführt wird.
Zum Beispiel:
curl --data-urlencode "p1=v1" [URL]
Der obige Befehl kräuselt die URL und übergibt den Parameter p1
den Wert v1
in der URL-kodierten Form. Dieser Befehl URL-kodiert den Wert v1
und erwartet, dass das p1
bereits in URL-kodierter Form vorliegt.
Wir können diese curl
-Option mit curl 7.18.0
oder höher verwenden. Um beispielsweise die Version des Befehls curl
zu überprüfen, können wir curl -V
verwenden.
Der Befehl curl
mit der Option --data-urlencode
kann in mehreren Formaten verwendet werden. Zum Beispiel:
-
curl --data-urlencode =content [URL]
Dieser Befehl codiert den Inhalt per URL und sendet ihn im
POST
. Das=
ist in den Daten nicht enthalten. -
curl --data-urlencode name@file [URL]
Dieser Befehl wird die Daten aus der angegebenen Datei URL-kodieren und sie im
POST
senden. Der Befehl geht davon aus, dass der Name bereits in URL-codierter Form vorliegt. -
curl --data-urlencode @file [URL]
Dieser Befehl wird die Daten aus der angegebenen Datei URL-kodieren und sie im
POST
senden.