【发布时间】:2018-04-05 16:31:48
【问题描述】:
我尝试使用以下代码连接到 Telegram Bot API
<?php
//step1
$cSession = curl_init();
//step2
curl_setopt($cSession,CURLOPT_URL,"https://api.telegram.org/bot<token>/sendMessage?chat_id=***&text=Hello");
curl_setopt($cSession,CURLOPT_RETURNTRANSFER,true);
curl_setopt($cSession,CURLOPT_HEADER, false);
curl_setopt($cSession, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($cSession, CURLOPT_SSL_VERIFYHOST, 2);
//step3
$result=curl_exec($cSession);
//step4
echo curl_error($cSession);
curl_close($cSession);
//step5
echo $result;
?>
它在本地主机上运行良好,但是当我将它上传到服务器时它会抛出错误
SSL: certificate subject name '*' does not match target host name 'api.telegram.org'
【问题讨论】:
-
您的服务器上使用的是哪个操作系统?由于您已经禁用证书检查,您可以尝试将
CURLOPT_SSL_VERIFYHOST设置为 0。 -
我试过了,错误变为错误请求 您的浏览器发送了此服务器无法理解的请求。我相信这是错误 400