Node.JS使用机器人直接将文件下载到Telegram



我正在使用带有Node.JS的Telegraf库来创建一个机器人程序来上传文件并生成下载链接一切都很好,但当我点击链接时,它会在浏览器中打开我想直接在机器人内下载媒体

bot.on('message', async ctx => {
if(ctx.update.message.photo) {
let link = await bot.telegram.getFileLink(ctx.message.photo[ctx.message.photo.length - 1].file_id)
bot.telegram.sendMessage(
ctx.chat.id,
`<a href = "${link}"> Download Photo </a>`,
{ parse_mode : 'html' }
)
}

这段代码给了我一个下载链接,它将在浏览器中打开,我不想这样,我想的是直接在聊天区下载文件,就像有人给你发送文件一样

我建议您将照片作为文档/文件发送。因此用户可以在Telegram中下载。

您需要更改:

bot.telegram.sendMessage(
ctx.chat.id,
`<a href = "${link}"> Download Photo </a>`,
{ parse_mode : 'html' }
)

至:

bot.telegram.sendDocument(
ctx.chat.id,
link
)

最新更新