Cara POST Data JSON dengan PHP cURL

PHP cURL adalah library yang digunakan untuk membuat HTTP Request. Untuk menggunakan PHP cURL, Anda harus menginstal dan mengaktifkan modul libcurl untuk PHP di sistem Anda. Dalam tutorial ini, Anda akan belajar cara POST data JSON dengan permintaan PHP cURL. Pada dasarnya, ada 4 langkah yang terlibat untuk menyelesaikan permintaan CURL menggunakan PHP.

     curl_init - Langkah pertama adalah menginisialisasi sesi baru cURL dan mengembalikan hasil cURL ke fungsi lain.
     curl_setopt - Langkah kedua adalah mengatur opsi untuk hasil sesi CURL. Semua pengaturan ini dijelaskan dengan sangat baik di curl_setopt ().
     curl_exec - Pada langkah ketiga ia melakukan sesi CURL berdasarkan settingan opsi di atas.
     curl_close - Langkah terakhir adalah menutup sesi cURL yang diinisialisasi oleh curl_init () dan membebaskan semua sumber daya. Juga menghapus hasil CURL.

Mari kita gunakan kode contoh di bawah ini untuk membuat permintaan POST dengan PHP cURL.

// A sample PHP Script to POST data using cURL
// Data in JSON format
 
$data = array(
    'username' => 'sharkwifi',
    'password' => 'loginwifiwithsocialmedia'
);
 
$payload = json_encode($data);
 
// Prepare new cURL resource
$ch = curl_init('https://api.sharkwifi.com/api/1.0/user/login');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
 
// Set HTTP Header for POST request
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
    'Content-Type: application/json',
    'Content-Length: ' . strlen($payload))
);
 
// Submit the POST request
$result = curl_exec($ch);
 
// Close cURL session handle
curl_close($ch);
 
?>

Yang utama adalah bahwa request harus berupa request POST data json-encoded dengan benar di dalam body. headerk harus menggambarkan dengan benar post body.