使用multipart / form-data

时间:2018-02-08 09:46:52

标签: php curl multipartform-data telegram telegram-bot

我想使用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的文件。

0 个答案:

没有答案