【发布时间】:2019-01-23 04:53:52
【问题描述】:
当我尝试从以下 url 读取 xml 输出时,通过 godaddy 共享主机中的 cron 作业。
https://www.bluedart.com/servlet/RoutingServlet?handler=tnt&action=custawbquery&loginid=MAA00001&format=xml&lickey=a28f0bb8690c75ce3368bb1c76ea98bc&verno=1.3&scan=1&awb=awb&numbers=14539611450
我收到以下错误
警告:simplexml_load_file() [function.simplexml-load-file]: SSL: Connection reset by peer in /Applications/XAMPP/xamppfiles/htdocs/indiagsl/cron/test.php 上线 32
警告:simplexml_load_file() [function.simplexml-load-file]:失败 启用加密 /Applications/XAMPP/xamppfiles/htdocs/indiagsl/cron/test.php 上线 32
警告: simplexml_load_file(https://www.bluedart.com/servlet/RoutingServlet?handler=tnt&action=custawbquery&loginid=MAA01849&awb=awb&format=xml&lickey=5eeb55bdce11d065649a32f7e6f6463c&verno=1.3&scan=1&numbers=50545219152) [function.simplexml-load-file]:无法打开流:操作 失败
我的代码如下
$url = "https://www.bluedart.com/servlet/RoutingServlet?handler=tnt&action=custawbquery&loginid=MAA00001&format=xml&lickey=a28f0bb8690c75ce3368bb1c76ea98bc&verno=1.3&scan=1&awb=awb&numbers=14539611450";
try {
echo $i."-";
$xml = simplexml_load_file($url);
if(false === $xml) {
echo "Failed Loading XML";
foreach(libxml_get_errors() as $errors) {
echo "\t", $errors->message ."##";
}
$updateFlag=0;
}
} catch(Exception $e) {
echo "ERROR::";
print_r($e);
}
请帮助我提供您宝贵的意见。 谢谢
【问题讨论】:
-
将您的链接更改为
http而不是https使其工作。似乎他们的 ssl 证书设置不正确。另外:我不确定这是否是真实的客户数据,但如果是,您可能希望删除链接,以免全世界都看到它。 -
谢谢,链接是虚拟的,用于测试目的。但是我已经尝试过了,将 https 更改为 http,它在将其作为 cron 作业运行时并没有修复它。
-
你确定你在你的 cronjob 中得到的错误是一样的吗?您发布的错误确实指向 SSL 部分。也许你也可以在你的 catch 子句中打印你的
$url以 100% 确定调用的是什么 url。 -
好的,现在检查。请给我几分钟。
-
你真的不应该发布一个包含你在 SO 上的服务的登录 ID 和许可证密钥的 URL。