2016-12-15 174 views
0

我想用cURL從外部網站獲取一些數據的html代碼片段,但收到了空響應。如果我在瀏覽器中輸入網址,我會得到我想要的數據,但我需要通過cURL或file_get_contents()從我的應用程序執行此操作。通過cURL從外部網站獲取一些數據

這是我的代碼:

$_awb = '888000074599'; 
    $url = 'http://89.45.196.45'; 
    $post_fields = ':8080/?id=8IM*8J*9K&NT='.$_awb; 

    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, $url); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post_fields); 

    $result = curl_exec($ch); 
    curl_close($ch); 

回答

0

你不應該使用CURLOPT_POSTFIELDS。您正嘗試使用查詢字符串執行GET請求,但postfields用於發出POST請求。

因此,將CURLOPT_URL設置爲正確的(絕對)網址應該可行。

$url = "http://89.45.196.45:8080/?id=8IM*8J*9K&NT=" 
    $nt = "888000074599"; 

    $ch = curl_init(); 

    curl_setopt($ch, CURLOPT_URL, $url . $nt); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

    $result = curl_exec($ch); 
    curl_close ($ch);