Menyelesaikan PHP file_get_contents() Ralat “Permintaan HTTP Gagal”
Apabila cuba menggunakan file_get_contents() untuk mendapatkan semula kandungan daripada URL yang ditentukan, pengguna mungkin menghadapi ralat: "Amaran: file-get-contents() gagal membuka strim: Permintaan HTTP gagal HTTP/1.1 202 Diterima." Ralat ini timbul apabila permintaan HTTP tidak dapat dilaksanakan dengan jayanya.
Untuk menangani isu ini, pendekatan alternatif ialah menggunakan sambungan cURL. cURL menawarkan kawalan yang lebih besar ke atas permintaan HTTP dan membenarkan pilihan konfigurasi tambahan. Berikut ialah coretan kod yang diubah suai menggunakan cURL:
<?php $curl_handle = curl_init(); curl_setopt($curl_handle, CURLOPT_URL, 'http://###.##.##.##/mp/get?mpsrc=http://mybucket.s3.amazonaws.com/11111.mpg&mpaction=convert format=flv'); curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2); curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Your application name'); $query = curl_exec($curl_handle); curl_close($curl_handle); ?>
Dalam versi yang diubah suai ini, kami memanfaatkan fungsi cURL untuk memulakan permintaan HTTP. Kami mentakrifkan pemegang curl dan menetapkan pelbagai pilihan:
Dengan menggunakan cURL, kami mendapat keuntungan kawalan yang lebih baik ke atas permintaan HTTP dan boleh menyelesaikan ralat "permintaan HTTP gagal" dengan berkesan yang dihadapi dengan file_get_contents().
Atas ialah kandungan terperinci Mengapa file_get_contents() Gagal dan Bagaimana cURL Boleh Membetulkan Ralat 'Permintaan HTTP Gagal'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!