我有一个处理程序express.js,它以文件的ID作为输入。
我不知道如何通过axios捕捉这个文件的流,并将它传输到客户端部分SPA。
谢谢你的关注
router.get('/api/track/:id', async(req, res) => {
// Create bot
const telegram = new Telegram(token, { agent })
const fileId = req.params.id
let url
try {
// Getting filelink from telegram
url = await telegram.getFileLink(fileId)
} catch (error) {
console.log('Error on getting link on file from telegram', error)
return { message: 'Error on getting link on file from telegram', code: 4, error}
}
res.set('content-type', 'audio/mp3');
res.set('accept-ranges', 'bytes');
// And this is place i'm try download file as stream...
try {
const response = await axios({
url,
method: 'GET',
responseType: 'stream'
})
console.log(response)
} catch (error) {
console.log(error)
}
})
发布于 2020-02-13 08:05:26
express res对象是一个可写流。这意味着您可以将axios 可读的响应流输送到快速可写响应流中。
const response = await axios({
url,
method: 'GET',
responseType: 'stream'
})
console.log(response)
response.data.pipe(res)https://stackoverflow.com/questions/60202993
复制相似问题