首頁 > 後端開發 > php教程 > 如何在 cURL POST 請求中正確設定 CURLOPT_POSTFIELDS 格式?

如何在 cURL POST 請求中正確設定 CURLOPT_POSTFIELDS 格式?

Linda Hamilton
發布: 2024-12-25 07:08:09
原創
901 人瀏覽過

How to Properly Format CURLOPT_POSTFIELDS in cURL POST Requests?

Curl 中用於POST 請求的CURLOPT_POSTFIELDS

當使用curl 執行POST 請求並指定CURLOPT_POSTCURLOPT :適當的格式。例如,考慮發布兩個欄位「first」和「last」:

「first=John&last=Smith」

字串格式

If傳送字串作為POST 資料時,應對其進行URL 編碼以確保正確的字元編碼。下面的程式碼示範了這一點:

$data = urlencode("first=John&last=Smith");
登入後複製

陣列格式

但是,如果POST資料是數組,則必須遵循「key => value」格式:

$data = [
    'first' => 'John',
    'last' => 'Smith'
];
登入後複製

在這種情況下,curl 會自動將Content-Type標頭設定為"multipart/form-data"。

Content-Type 標頭

建議明確設定 Content-Type 標頭以獲得更好的相容性。例如,要將其設定為「application/json」:

curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
登入後複製

使用http_build_query()

或者,不手動建立查詢,而是使用PHP 的http_build_query ()函數可以使用:

$query = http_build_query($data, '', '&');
curl_setopt($ch, CURLOPT_POSTFIELDS, $query);
登入後複製

函數處理URL 編碼和正確的 key=value 格式無縫銜接。

以上是如何在 cURL POST 請求中正確設定 CURLOPT_POSTFIELDS 格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板