📅  最后修改于: 2023-12-03 15:03:12.161000             🧑  作者: Mango
在 Node.js 中使用 Telegram Bot API 发送文档,你可以使用 Bot.sendDocument()
方法。这个方法可以将本地的文档文件或者通过 URL 获取的文件上传到 Telegram 服务器,并发送到指定的聊天室或者群组中。
bot.sendDocument(chatId, document[, options])
chatId
: 发送文档的聊天室或者群组的 ID。可以是数字或者字符串形式。document
: 要发送的文档,可以是本地文件的路径或者 URL。options
(可选): 一个包含可选属性的对象:caption
: 文档的描述。replyMarkup
: 可选的、针对这条发送文档消息的用户的回复的额外接口。这个方法返回一个 Promise
对象,当消息发送成功后,它会被解决为 Message
对象。当消息发送失败时,Promise
对象会被拒绝。
以下示例演示了如何使用 Bot.sendDocument()
方法发送本地的文档:
const TelegramBot = require('node-telegram-bot-api');
const bot = new TelegramBot('TOKEN');
bot.sendDocument(chatId, '/path/to/document.pdf', { caption: '这是一个文档' })
.then((res) => {
console.log('文档发送成功', res);
})
.catch((err) => {
console.log('文档发送失败', err);
});
以下示例演示了如何使用 Bot.sendDocument()
方法发送通过 URL 获取的文档:
const TelegramBot = require('node-telegram-bot-api');
const bot = new TelegramBot('TOKEN');
bot.sendDocument(chatId, 'https://example.com/document.pdf', { caption: '这是一个文档' })
.then((res) => {
console.log('文档发送成功', res);
})
.catch((err) => {
console.log('文档发送失败', err);
});
注意:在使用 Bot.sendDocument()
方法发送 URL 的时候,需要保证 URL 是公开可访问的。否则,Telegram 服务器将无法下载这个文件,并且发送文档消息会失败。