cur*_*der 5 php guzzle telegram telegram-bot
我正在尝试使用TelegramBot API使用以下代码上传图片
if(file_exists($_FILES['fileToUpload']['tmp_name'])){
$new = fopen($_FILES['fileToUpload']['tmp_name'], "rb");
$contents = fread($new, $_FILES['fileToUpload']['size']);
fclose($new);
$client = new Client();
$response = $client->post("https://api.telegram.org/botMyApiKey/sendPhoto", [
'body' => ['chat_id' => '11111111', 'photo' => $contents]
]);
var_dump($response);
}else{
echo("No File");
}
Run Code Online (Sandbox Code Playgroud)
我到了Nginx 502 Bad Gateway.我使用的方法是否正确?我在使用API 获取getMe方面没有任何问题.
PS我正在使用Guzzle 5.3.0 for php兼容性.
尝试将其作为多部分帖子进行。
$client->post(
'https://api.telegram.org/botMyApiKey/sendPhoto',
array(
'multipart' => array(
array(
'name' => 'chat_id',
'contents' => '1111111'
),
array(
'name' => 'photo',
'contents' => $contents
)
)
)
);
Run Code Online (Sandbox Code Playgroud)
适用于狂饮 5.3
use GuzzleHttp\Client;
$client = new Client(['defaults' => [
'verify' => false
]]);
$response = $client->post('https://api.telegram.org/bot[token]/sendPhoto', [
'body' => [
'chat_id' => 'xxxxx',
'photo' => fopen(__DIR__ . '/test.jpg', 'r')
]
]);
var_dump($response);
Run Code Online (Sandbox Code Playgroud)
注意:您必须将文件句柄传递给“photo”属性,而不是文件的内容。
| 归档时间: |
|
| 查看次数: |
2039 次 |
| 最近记录: |