У гэтым артыкуле мы абмяркуем, як выкарыстоўваць curl
для ўзаемадзеяння з RESTful API. curl
гэта ўтыліта каманднага радка, якая можа выкарыстоўвацца для адпраўкі запытаў у API.
Запыты API складаюцца з чатырох розных частак:
GET
POST
PUT
DELETE
і PATCH
Сінтаксіс | | + _ | каманда:
curl
Варыянты, якія мы разгледзім у гэтым пасце:
curl [options] [URL...]
альбо -X
- Метад HTTP, які будзе выкарыстоўвацца--request
альбо -i
- Уключыце загалоўкі адказаў--include
альбо -d
- Дадзеныя, якія трэба адправіць у API--data
альбо -H
- Любыя дадатковыя загалоўкі, якія трэба адправіцьДля гэтага выкарыстоўваецца метад GET прынесці рэсурс з сервера. У --header
метад GET з'яўляецца метадам па змаўчанні, таму нам не трэба яго ўказваць.
Прыклад:
curl
Мы таксама можам адпраўляць параметры запыту разам з curl https://jsonplaceholder.typicode.com/posts
АТРЫМАЦЬ запыт.
Прыклад:
curl
Для гэтага выкарыстоўваецца метад POST стварыць рэсурс на серверы.
Каб адправіць curl https://jsonplaceholder.typicode.com/posts?userId=5
Запыт POST мы выкарыстоўваем опцыю curl
.
Прыклад:
-X POST
Па змаўчанні curl -X POST -d 'userId=5&title=Post Title&body=Post content.' https://jsonplaceholder.typicode.com/posts
выкарыстоўвае curl
як Content-Type: application/x-www-form-urlencoded
загаловак, таму нам не трэба ўказваць яго пры адпраўцы дадзеных формы.
Каб Апублікаваць JSON па Content-Type
мы павінны ўказаць curl
як Content-Type
.
Прыклад:
application/json
Для гэтага выкарыстоўваецца метад PUT абнавіць альбо замяніць рэсурс на серверы. Ён замяняе ўсе дадзеныя названага рэсурсу прадстаўленымі дадзенымі запыту.
нататка:Для запыту PUT мы павінны прадаставіць усе дадзеныя ў целе запыту.Каб адправіць curl -X POST -H 'Content-Type: application/json'
Запыт PUT мы выкарыстоўваем опцыю
-d '{'userId': 5, 'title': 'Post Title', 'body': 'Post content.'}'
https://jsonplaceholder.typicode.com/posts curl
.
Прыклад:
-X PUT
Прыведзены вышэй запыт PUT заменіць раней створаны пост 'Новым загалоўкам паведамлення' і 'Новым целам паведамлення'.
Для вырабу выкарыстоўваецца метад PATCH частковыя абнаўлення да рэсурсу на серверы.
нататка:Для запыту PATCH мы не павінны прадастаўляць усе дадзеныя. Мы адпраўляем толькі тыя дадзеныя, якія хочам абнавіць.Каб адправіць curl -X PUT -H 'Content-Type: application/json'
Запыт PATCH мы выкарыстоўваем опцыю
-d '{'userId': 5, 'title': 'New Post Title', 'body': 'New post content.'}'
https://jsonplaceholder.typicode.com/posts/5 curl
.
Прыклад:
-X PATCH
Звярніце ўвагу, як мы адпраўляем цела толькі з 'Абноўленым зместам паведамлення', паколькі мы робім частковае абнаўленне.
Метад DELETE выкарыстоўваецца для выдалення названага рэсурсу з сервера.
Каб адправіць curl -X PATCH -H 'Content-Type: application/json'
Запыт DELETE мы выкарыстоўваем опцыю
-d '{'userId': 5, 'body': 'Updated post content.'}'
https://jsonplaceholder.typicode.com/posts/5 curl
.
-X DELETE
нататка:Метад DELETE не мае цела.Часам канчатковая кропка API абмяжоўвае доступ і будзе абслугоўваць запыты толькі для аўтэнтыфікаваных і аўтарызаваных карыстальнікаў. Для гэтых запытаў мы павінны прадаставіць маркер доступу ў загалоўку запыту.
Каб адправіць curl -X DELETE https://jsonplaceholder.typicode.com/posts/5
загаловак, мы выкарыстоўваем: curl
варыянт.
Наступны запыт адпраўляе запыт POST з маркерам на прад'яўніка ў загалоўку:
-H
У гэтым паведамленні мы даведаліся, як адпраўляць HTTP-запыты (GET, POST, PUT, PATCH і DELETE) у API з дапамогай каманд curl.