I just wanna send a simple request to telegram bot APIs my code is:
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.telegram.org/bot332537240:MY_TOKEN/getUpdates",
CURLOPT_CUSTOMREQUEST => "POST",
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
returns:
cURL Error #:SSL certificate problem: self signed certificate
I don’t want use any ssl. I wont set any webhook for telegram. this is a simple request and I failed to handle this. please help me
4
Answers
telegram webhook only work with ssl. you can simply use cloudflare free ssl.
but it’s not working for .ir domains.
you can get update much more easier.
You can use
CURLOPT_SSL_VERIFYPEER
and set it to false incurl_setopt_array
.CURLOPT_SSL_VERIFYPEER
stop cURL from verifying the peer’s SSL certificate.Hope it should help.
if you want playing with methods and get a overall understanding how telegram bot works,just put the url in browser and see the results.
for your problem i think you are using really old curl library , get latest cacert file from here and replace it with the old one. if you are using xampp follow this link for more info
I have the same problem and can be solved by copying file cacert.pem into my server and then insert the path of cacert file into my PHP script. In my case i put file cacert into drive C of my web server and then insert this script into my PHP File:
So your PHP script should be like this:
You can download file cacert.pem from:
If you still confuse, you can view my complete tutorial video on my youtube: