我想使用multipart / form-data将视频发送到带有bot的Telegram 我使用下面的代码,它适用于小于20MB的文件,但不适用于大于20MB的文件,但Telegram API参考说:
使用multipart / form-data以通常的方式发布文件,通过浏览器上传文件。照片最大尺寸为10 MB,其他文件最大尺寸为50 MB。
$chatId=1111111;
$video=urlencode("http://video/mp4");
$botToken = "mytoken";
$webSite = "https://api.telegram.org/bot" . $botToken;
$url = $webSite. "/sendVideo";
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER, "Content-Type: multipart/form-data;charset=utf-8");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, "chat_id=$chatId&video=$video");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec ($ch);
curl_close ($ch);
var_dump($output); // show output
我在浏览器中获得的结果是:
"{"ok":false,"error_code":400,"description":"Bad Request: wrong file identifier/HTTP URL specified"}"
我已尝试在同一主机中使用两个不同的视频,它适用于小于20MB的文件,但不适用于另一个35 MB的文件。