我试图从API中使用curl获取响应,但由于某种原因失败。但是,当我在浏览器中打开API调用链接时,它工作正常。此外,如果我在浏览器curl中打开链接后尝试使用curl获取响应,但如果将$ url变量更改为新链接,它将再次停止工作,直到我再次在浏览器中打开它。PHP Curl不返回响应
这里是我的代码,不用担心的API密钥,它只是一个试验:
<?php
set_time_limit(30);
$API_KEY = "ak_wujpBbfefrmxDleyAmnqtFpqAcmey";
$url = 'https://www.google.com/';
$api_call = "https://www.screenshot-website.com/api/$API_KEY?url=$url&type=tablet";
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $api_call,
CURLOPT_TIMEOUT => 30,
CURLOPT_TIMEOUT_MS => 30000,
CURLOPT_CONNECTTIMEOUT => 30,
CURLOPT_CONNECTTIMEOUT_MS => 30000)
);
$response = json_decode(curl_exec($curl), true);
if($errno = curl_errno($curl)) {
$error_message = curl_strerror($errno);
echo "cURL error ({$errno}):\n {$error_message}";
}
curl_close($curl); ?>
<img src="<?php echo $response['image']; ?>">
我都没有错误。
什么$回应时,它不工作? – idmean 2014-09-06 20:16:19
症状没有任何意义。浏览器中的打开url与服务器的curl请求完全断开 – charlietfl 2014-09-06 20:17:44
根据gettype(),它是NULL – 2014-09-06 20:18:16