Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Memformat CURLOPT_POSTFIELDS dengan betul dalam Permintaan CURL POST?

Bagaimana untuk Memformat CURLOPT_POSTFIELDS dengan betul dalam Permintaan CURL POST?

Linda Hamilton
Lepaskan: 2024-12-25 07:08:09
asal
902 orang telah melayarinya

How to Properly Format CURLOPT_POSTFIELDS in cURL POST Requests?

CURLOPT_POSTFIELDS dalam Curl untuk Permintaan POST

Apabila menggunakan curl untuk melaksanakan permintaan POST dan menentukan pilihan CURLOPT_POSTFIELDS, adalah penting untuk mempertimbangkan format yang sesuai. Sebagai contoh, pertimbangkan untuk menyiarkan dua medan, "pertama" dan "terakhir":

"first=John&last=Smith"

Pemformatan Rentetan

Jika menghantar rentetan sebagai data POST, ia harus dikodkan URL untuk memastikan pengekodan aksara yang betul. Kod berikut menunjukkan perkara ini:

$data = urlencode("first=John&last=Smith");
Salin selepas log masuk

Pemformatan Tatasusunan

Walau bagaimanapun, jika data POST ialah tatasusunan, ia mesti mengikut nilai "kunci =>" format:

$data = [
    'first' => 'John',
    'last' => 'Smith'
];
Salin selepas log masuk

Dalam kes ini, curl secara automatik akan menetapkan pengepala Jenis Kandungan kepada "multipart/form-data".

Pengepala Jenis Kandungan

Menetapkan pengepala Jenis Kandungan secara eksplisit disyorkan untuk keserasian yang lebih baik. Contohnya, untuk menetapkannya kepada "application/json":

curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);
Salin selepas log masuk

Menggunakan http_build_query()

Sebagai alternatif, bukannya membina rentetan pertanyaan secara manual, http_build_query PHP () fungsi boleh digunakan:

$query = http_build_query($data, '', '&');
curl_setopt($ch, CURLOPT_POSTFIELDS, $query);
Salin selepas log masuk

Fungsi ini mengendalikan Pengekodan URL dan pemformatan kunci=nilai yang betul dengan lancar.

Atas ialah kandungan terperinci Bagaimana untuk Memformat CURLOPT_POSTFIELDS dengan betul dalam Permintaan CURL POST?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan