GNU/Linux >> Znalost Linux >  >> Debian

Jak vytvořit požadavek POST s curl

Curl je nástroj příkazového řádku, který umožňuje uživateli přenášet data pomocí libovolného standardního protokolu. Je funkční na všech klíčových operačních systémech včetně Linuxu. Příkaz curl se používá hlavně k testování API (Application programming interface) odesláním požadavku na příspěvek a je předinstalovaný v mnoha distribucích Linuxu. Musíme však ručně nainstalovat příkaz curl v dlouhodobé podpoře Ubuntu 20.04 (LTS).

Pro ukázku se používá Ubuntu 20.04 LTS.

Nainstalujte curl na Ubuntu 20.04

Zadejte níže uvedený příkaz pro instalaci curl v Ubuntu 20.04:

 $ sudo apt install curl

Poznámka:Tento krok můžete přeskočit, pokud je již v systému nainstalován příkaz curl.

Jakmile je příkaz curl nainstalován, ověřte nainstalovanou verzi pomocí příkazu:

$ curl --version

Zadejte požadavek POST pomocí curl

K odeslání dat na vzdálený server použijeme metodu HTTP post.

Následuje jednoduchá forma příkazu curl pro odeslání požadavku na příspěvek:

$ curl -X POST [options] [the URL of server]

Volba -X se používá k popisu metody HTTP. Příkaz curl používá metodu Get jako výchozí metodu HTTP. Abychom však mohli provést požadavek POST, musíme zadat POST s volbou -X.

Obecnou žádost o příspěvek lze podat následovně:

$ curl –X POST https://example.com/

S požadavkem POST odešlete další pole

Normálně je požadavek na příspěvek vytvořen pomocí formuláře HTML.

Vytvořil jsem demo API, které přijímá uživatelské jméno a věk. Zašleme žádost o příspěvek a zašleme hodnoty jména a věku. Volba –d se používá s příkazem curl k odeslání dat dalšího pole na vzdálený server.

$ curl -X POST -d 'name=kamran&age=24' https://curlliuxexample.000webhostapp.com/index.php

Místo volby –d můžeme také použít volbu –F k odeslání dodatečných polí s požadavkem na příspěvek následovně:

curl -X POST -F 'name=kamran' -F 'age=24' https://curlliuxexample.000webhostapp.com/index.php

Při použití volby –F nemůžeme sloučit data s operátorem &. Možnost –d používá typ obsahu application/x-www-form-urlencoded při odesílání dat dalšího pole na server, zatímco volba-F používá typ obsahu s více částmi/formovými daty.

Uveďte typ záhlaví nebo obsahu v požadavku POST

Typ záhlaví nebo obsahu lze zadat v požadavku POST pomocí volby -H. Nastavíme Content-Type na application/json a odešleme data JSON pomocí příkazu:

$ curl -X POST -H "Content-Type: application/json" -d '{"name": "kamran", "age": "24"}' https://example.com

Nahrajte soubor(y) pomocí příkazu curl

Soubory lze nahrát pomocí příkazu curl. Chcete-li nahrát soubor pomocí příkazu curl, přidejte před umístění souboru znak „@“: 

$ curl -X POST -F '[email protected]/home/Downloads/mypic.jpg' http://example.com 

Ve výše uvedeném příkazu nahrávám soubor obrázku pomocí příkazu curl.

Závěr

Tento příspěvek popisuje použití příkazu curl. Pomocí příkazu curl můžeme odeslat další data pole a nahrát soubory na server.


Debian
  1. Jak provést zastavení pohybu nebo časosběrné video pomocí webové kamery?

  2. Jak nastavit, aby se Nautilus ve výchozím nastavení otevřel s extra panelem?

  3. Jak vytvořit VPN

  1. Jak vygenerovat žádost o podpis certifikátu (CSR) s OpenSSL?

  2. Jak udělat soubor řídký?

  3. Jak mohu provést HTTP PUT s Wget?

  1. Jak vygenerovat žádost o podpis certifikátu (CSR) pomocí OpenSSL

  2. Jak zajistit, aby Cisco Webex fungoval s 13.10 64bit?

  3. Jak si vyžádám soubor, ale neuložím jej pomocí Wget?