Pada artikel ini, kita akan membahas cara menggunakan curl
untuk berinteraksi dengan RESTful API. curl
adalah utilitas baris perintah yang dapat digunakan untuk mengirim permintaan ke API.
Permintaan API terdiri dari empat bagian berbeda:
GET
POST
PUT
DELETE
dan PATCH
Sintaks untuk curl
perintahnya adalah:
curl [options] [URL...]
Opsi yang akan kami bahas dalam posting ini adalah:
-X
atau --request
- Metode HTTP yang akan digunakan-i
atau --include
- Sertakan tajuk tanggapan-d
atau --data
- Data yang akan dikirim ke API-H
atau --header
- Setiap header tambahan yang akan dikirimMetode GET digunakan untuk mengambil sumber daya dari server. Di curl
, metode GET adalah metode default, jadi kita tidak perlu menentukannya.
Contoh:
curl https://jsonplaceholder.typicode.com/posts
Kami juga dapat mengirimkan parameter kueri bersama dengan curl
DAPATKAN permintaan.
Contoh:
curl https://jsonplaceholder.typicode.com/posts?userId=5
Metode POST digunakan untuk membuat sumber daya di server.
Untuk mengirim curl
Permintaan POST kami menggunakan opsi -X POST
.
Contoh:
curl -X POST -d 'userId=5&title=Post Title&body=Post content.' https://jsonplaceholder.typicode.com/posts
Secara default, curl
menggunakan Content-Type: application/x-www-form-urlencoded
sebagai Content-Type
header, jadi kami tidak perlu menentukannya saat mengirim data formulir.
Untuk MENGIRIMKAN JSON dengan curl
kita harus menentukan Content-Type
sebagai application/json
.
Contoh:
curl -X POST -H 'Content-Type: application/json'
-d '{'userId': 5, 'title': 'Post Title', 'body': 'Post content.'}'
https://jsonplaceholder.typicode.com/posts
Metode PUT digunakan untuk memperbarui atau menggantikan sumber daya di server. Ini menggantikan semua data dari sumber yang ditentukan dengan data permintaan yang disediakan.
catatan:Untuk permintaan PUT, kami harus menyediakan semua data di badan permintaan.Untuk mengirim curl
Permintaan PUT kami menggunakan opsi -X PUT
.
Contoh:
curl -X PUT -H 'Content-Type: application/json'
-d '{'userId': 5, 'title': 'New Post Title', 'body': 'New post content.'}'
https://jsonplaceholder.typicode.com/posts/5
Permintaan PUT di atas akan menggantikan posting yang kita buat sebelumnya dengan 'Judul posting baru' dan 'Badan posting baru'.
Metode PATCH digunakan untuk membuat pembaruan parsial ke sumber daya di server.
catatan:Untuk permintaan PATCH, kami tidak harus menyediakan semua data. Kami hanya mengirim data yang ingin kami perbarui.Untuk mengirim curl
Permintaan PATCH kami menggunakan opsi -X PATCH
.
Contoh:
curl -X PATCH -H 'Content-Type: application/json'
-d '{'userId': 5, 'body': 'Updated post content.'}'
https://jsonplaceholder.typicode.com/posts/5
Perhatikan bagaimana kami hanya mengirimkan badan dengan 'Konten postingan yang diperbarui' saat kami melakukan pembaruan sebagian.
Metode DELETE digunakan untuk menghapus sumber daya tertentu dari server.
Untuk mengirim curl
HAPUS permintaan kami menggunakan opsi -X DELETE
.
curl -X DELETE https://jsonplaceholder.typicode.com/posts/5
catatan:Metode DELETE tidak memiliki isi.Terkadang titik akhir API memiliki akses terbatas dan hanya akan melayani permintaan untuk pengguna yang diautentikasi dan diberi otorisasi. Untuk permintaan ini, kami harus memberikan token akses di header permintaan.
Untuk mengirim curl
header, kami menggunakan: -H
pilihan.
Permintaan berikut mengirimkan permintaan POST dengan token pembawa di header:
curl -X POST https://some-web-url/api/v1/users -H 'Accept: application/json' -H 'Content-Type: application/json' -H 'Authorization: Bearer {ACCESS_TOKEN}' -H 'cache-control: no-cache' -d '{ 'username' : 'myusername', 'email' : 'myusername@gmail.com', 'password' : 'Passw0rd123!' }'
Dalam posting ini kita belajar bagaimana mengirim permintaan HTTP (GET, POST, PUT, PATCH dan DELETE) ke API menggunakan perintah curl.