如何获得http请求的响应
how to get response of http request
[![在此处输入图片描述][1]][1]我正在尝试获取某个标签值,但它显示了一些错误。
下面是代码,请提出一些解决方案。
这是我用于 httpGet 请求的方法。
function httpGet($result15)
{
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$result15);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$output=curl_exec($ch);
curl_close($ch);
return $output;
}
$result15= httpGet("https://www.googleapis.com/customsearch/v1?key=API_KEY&cx=003255er&q=cancer&num=1&alt=atom");//new cse
echo $result15;
$xml = new DOMDocument();
$xml->loadXML($result15);
foreach( $xml->entry as $entry )
{
echo "URL=".(string)$entry->id.PHP_EOL;
echo "Summary=".(string)$entry->summary.PHP_EOL;
}
您可能会发现 curl 请求失败。您需要做几件事...
function httpGet($result15)
{
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$result15);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // Add this
$output=curl_exec($ch);
// If this fails, output error.
if ($output === FALSE) {
echo curl_error($ch);
// Not sure what you want to do, but 'exit' will work for now
exit();
}
curl_close($ch);
return $output;
}
如果 curl 请求失败,这将显示错误。您将需要决定如何应对。您可以 return false,然后在您的代码中进一步检查它,然后再尝试将其加载为 XML。上面的代码只是在出错时停止。
您的下一段代码似乎混合了 SimpleXML 和 DOMDocument,如果文档结构相当简单,您可以使用 SimpleXML...
$xml = simplexml_load_string($result15);
foreach( $xml->entry as $entry )
{
[![在此处输入图片描述][1]][1]我正在尝试获取某个标签值,但它显示了一些错误。 下面是代码,请提出一些解决方案。
这是我用于 httpGet 请求的方法。
function httpGet($result15)
{
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$result15);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$output=curl_exec($ch);
curl_close($ch);
return $output;
}
$result15= httpGet("https://www.googleapis.com/customsearch/v1?key=API_KEY&cx=003255er&q=cancer&num=1&alt=atom");//new cse
echo $result15;
$xml = new DOMDocument();
$xml->loadXML($result15);
foreach( $xml->entry as $entry )
{
echo "URL=".(string)$entry->id.PHP_EOL;
echo "Summary=".(string)$entry->summary.PHP_EOL;
}
您可能会发现 curl 请求失败。您需要做几件事...
function httpGet($result15)
{
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$result15);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // Add this
$output=curl_exec($ch);
// If this fails, output error.
if ($output === FALSE) {
echo curl_error($ch);
// Not sure what you want to do, but 'exit' will work for now
exit();
}
curl_close($ch);
return $output;
}
如果 curl 请求失败,这将显示错误。您将需要决定如何应对。您可以 return false,然后在您的代码中进一步检查它,然后再尝试将其加载为 XML。上面的代码只是在出错时停止。
您的下一段代码似乎混合了 SimpleXML 和 DOMDocument,如果文档结构相当简单,您可以使用 SimpleXML...
$xml = simplexml_load_string($result15);
foreach( $xml->entry as $entry )
{