[英]Connection Refused when using PHP cURL to retrieve image
嘗試使用PHP cURL遠程檢索網絡攝像頭圖像時,出現“連接被拒絕”錯誤。 如果嘗試在本地計算機上的瀏覽器中使用URL檢索圖像,則系統會提示我輸入憑據,然后它會為我提供圖像。 為什么會這樣呢? 是我本人還是另一台服務器上的腳本,誰在索要該映像,應該沒有什么區別,對嗎?
我的代碼:
<?php
$token = "user:password";
$url = "http://000.000.000.000:000/cgi-bin/image.jpg";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPGET, true);
curl_setopt($ch, CURLOPT_USERPWD, $token);
/*curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);*/
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
if( curl_exec($ch) === false ){
echo curl_error($ch);
}else{
$data = curl_exec($ch);
}
curl_close($ch);
echo "<pre>";
print_r($data);
echo "</pre>";
?>
這很可能是基本訪問身份驗證 。 如果在瀏覽器中轉到某個URL,則會顯示一個登錄彈出窗口,但您也可以在URL中包括用戶名和密碼,如下所示:
https://Aladdin:OpenSesame@www.example.com/index.html
在這種情況下,它將是:
$url = "http://user:password@000.000.000.000:000/cgi-bin/image.jpg";
編輯由於使用curl,它具有發送身份驗證標頭的功能。
curl_setopt($process, CURLOPT_USERPWD, $username.':'.$password);
在這種情況下:
curl_setopt($process, CURLOPT_USERPWD, $token);
另外,請參閱此答案 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.