【问题标题】:Getting issue while sending request with curl使用 curl 发送请求时出现问题
【发布时间】:2018-05-06 22:54:45
【问题描述】:

当我尝试通过 curl 发送请求时,我有一个 api 我收到此错误

连接lasoon.co.in 80端口失败:连接超时

$country_id = '101'; // 101 for india
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"http://lasoon.co.in/location/location_api.php");
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 300);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)");
curl_setopt($ch, CURLOPT_POSTFIELDS, "ApiType=state&CountryId=".$country_id);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$server_output = curl_exec ($ch);
print_r(curl_getinfo($ch));
print_r(curl_error($ch));

这是我的 curl 请求代码。当我从本地主机发送请求时,它工作正常。但是当我在服务器上测试它时,它给了我同样的错误。

【问题讨论】:

  • 它对我来说很好用。您的服务器是否可以访问该网址?
  • 它也为我工作,但来自本地主机。但是当我通过这个 url scratchscheme.com/test_api.php 发送请求时,我收到了这个错误。
  • 我无法访问您的服务器。如果您可以在服务器上获取 SSH 控制台,请尝试从内部访问 API 位置。
  • 对不起,我到达了。因此,您的服务器没有访问 API 并显示“无法连接到 lasoon.co.in 端口 80:连接超时”。应该是网络问题,你的代码没问题。
  • 但它在本地主机上工作。我没有得到实际的问题

标签: php curl


【解决方案1】:

您在实时服务器上请求的 URL 很可能与 localhost 上的 URL 发生了某种变化。最好的办法是使用以下方法进行调试:

curl_setopt($handle, CURLOPT_VERBOSE, true);
$verbose = fopen('php://temp', 'w+');
curl_setopt($handle, CURLOPT_STDERR, $verbose);
$result = curl_exec($handle);

rewind($verbose);
$verboseLog = stream_get_contents($verbose);
echo "Verbose information:\n<pre>", htmlspecialchars($verboseLog), "</pre>\n";

这将为您的请求打印审计跟踪,包括您的请求尝试访问的 URL。检查该信息,您应该能够找到问题所在。 The above code was pulled from here

【讨论】:

  • @SubhashShipu 答案并非旨在解决您的问题,您没有为任何人提供足够的信息来解决您的问题。答案旨在为您提供一种获取解决问题所需信息的方法。简短的回答是“您在实时服务器上请求的 URL 很可能与 localhost 上的相比有所改变”,换句话说,您从实时服务器请求的 URL 无效。
  • 我在同一个 url 上发送请求,但从 localhost 然后它工作正常
  • @SubhashShipu 如果您添加了上述代码,您应该会看到一堆新的文本输出,其中包含包括 URL 在内的请求。您需要在实时服务器上执行此操作才能看到那里请求的实际 URL。我看到您使用的是 print_r,但那不一样,添加调试代码,我保证一旦您这样做,您就会看到问题。
  • 我没有在我尝试过很多次的代码中发现任何错误,即使我没有得到任何关于详细信息的日志
  • 您必须在正确的位置回显详细信息,您必须在与页面上打印的所有其他内容相同的位置回显它
猜你喜欢
  • 1970-01-01
  • 2019-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-15
  • 1970-01-01
相关资源
最近更新 更多