CURLOPT_POST_JSON是CURLOPT_POSTFIELDS選項的一種使用方法,它允許我們向服務器發送JSON格式的POST請求。在使用該選項時,需要設置CURLOPT_HTTPHEADER選項,將Content-Type設置為“application/json”,這樣服務器就知道請求的數據是JSON格式的。
$curl = curl_init(); curl_setopt($curl, CURLOPT_URL, 'https://example.com/api'); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode(['key' =>'value'])); curl_setopt($curl, CURLOPT_HTTPHEADER, ['Content-Type: application/json']); $response = curl_exec($curl); curl_close($curl);
在上面的代碼片段中,我們首先使用curl_init()函數創建一個CURL句柄。然后,我們使用curl_setopt()函數設置選項。首先,我們設置URL和返回結果的類型。之后,我們將POST選項設置為true,并將POST數據設置為JSON格式的數據。接著,我們設置了HTTP頭部的Content-Type為“application/json”。最后,我們執行請求并關閉句柄。
CURL在執行請求時會自動將JSON數據編碼為字符串,并且在接收到響應后,會將響應中的JSON數據解碼為PHP數組或對象。因此,在使用CURLOPT_POST_JSON選項時,我們不需要自己編碼或解碼JSON數據。
上一篇curl上傳圖片json
下一篇vue ref加樣式