Telegram дает пустой ответ от сервера при попытке отправить некоторые изображения с помощью cUrl

Я сделал функцию в php, которая использует multipart / form-data и cUrl для отправки документов через API TeleDog sendDocument. Вот документация

В частности, я использую его для отправки файла .png в качестве документов, но он не работает с 2 или 3 изображениями из сотен, которые были успешными. Ошибка, возвращаемая curl_error: «Пустой ответ от сервера». Я не знаю, почему и как это происходит только с этими изображениями. Здесь у вас есть один из тех

Это функция, которую я использую:

function spng($chat_id, $nome, $fnome = 'justforwardme.png')
{
global $api;
define('BOTAPI','https://api.telegram.org/'.$api.'/');

$cfile = new CURLFile($nome, 'image/png', $fnome);
$data = [
'chat_id' => $chat_id ,
'document' => $cfile
];

$ch = curl_init(BOTAPI.'sendDocument');
if ($ch===false) return array(false, 'Unable to set URL');
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type:multipart/form-data'
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);
if ($result) $error = 'none'; else $error = curl_error($ch);
curl_close($ch);
return array($result, $error);
}

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector