Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Melaksanakan Pengesahan Asas HTTP dengan PHP cURL?

Bagaimana untuk Melaksanakan Pengesahan Asas HTTP dengan PHP cURL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-30 12:48:10711semak imbas

How to Implement HTTP Basic Authentication with PHP cURL?

Pengesahan Asas HTTP dengan PHP cURL

Apabila membuat permintaan HTTP kepada perkhidmatan web dengan cURL, anda mungkin menghadapi keperluan untuk menyediakan pengesahan. Pengesahan asas HTTP ialah kaedah mudah untuk mengesahkan pengguna dengan menghantar nama pengguna dan kata laluan mereka dalam pengepala permintaan. Artikel ini menunjukkan cara untuk melaksanakan pengesahan asas HTTP menggunakan PHP cURL.

Mencipta Pengepala Pengesahan

Untuk mengesahkan menggunakan cURL, anda mesti menetapkan pilihan CURLOPT_USERPWD. Pilihan ini mengambil rentetan dalam format berikut: :. Contohnya:

curl_setopt($ch, CURLOPT_USERPWD, 'user:password');

Menetapkan Pilihan Permintaan Tambahan

Selain pengepala pengesahan, anda mungkin perlu menentukan pilihan permintaan tambahan, seperti:

  • CURLOPT_HTTPHEADER: Tentukan pengepala tambahan untuk dihantar dalam permintaan.
  • CURLOPT_HEADER: Tetapkan kepada 1 untuk menerima pengepala respons pelayan.
  • CURLOPT_TIMEOUT: Tetapkan masa maksimum untuk menunggu respons dalam beberapa saat.
  • CURLOPT_POST: Tetapkan kepada 1 untuk membuat permintaan POST (lalai ialah DAPATKAN).
  • CURLOPT_POSTFIELDS: Tetapkan data POST untuk dihantar dalam permintaan.
  • CURLOPT_RETURNTRANSFER: Tetapkan kepada TRUE untuk menyimpan badan respons sebagai rentetan.

Contoh Kod

Berikut ialah contoh skrip yang membuat permintaan yang disahkan kepada perkhidmatan web:

$ch = curl_init($host);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/xml', 'Additional-Header: value'));
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_USERPWD, 'user:password');
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payloadName);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$return = curl_exec($ch);
curl_close($ch);

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pengesahan Asas HTTP dengan PHP cURL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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