javascript - 从 gridfs-stream 检索时无法将 PDF 呈现到浏览器
问题描述
我的控制器:-
view: async (req, res) => {
var id = req.params.pid
id = mongoose.Types.ObjectId(id)
const project = await Project.findById(id)
const upid = project.uploadedGridFileId
var uploads = mongoose.createConnection("mongodb://localhost:27017/techv-uploads", { useNewUrlParser: true, useUnifiedTopology: true })
//console.log(uploads)
uploads.once('open', function () {
var gfs = gridfsStream(uploads.db, mongoose.mongo)
var readstream = gfs.createReadStream({
_id: mongoose.Types.ObjectId(upid),
root: "projectPdfs"
})
//console.log(readstream)
res.set("Content-Type" , "application/pdf")
res.set("Content-Disposition", "inline" )
readstream.pipe(res)
})
}
它提供了下载选项,而不是直接显示在浏览器上。它适用于图像文件,但不适用于 pdfs 。
解决方案
推荐阅读
- java - HashMap 的 java jackson 数据绑定
> - mongodb - MongoDB列出父类别中的子类别
- python - 如何知道我当前的 Django 项目是在哪个虚拟环境下创建的?
- python - 如何在 Python 中打印查询结果,包括列名
- javascript - 在 datapower 中将 application/pdf、text/html 数据转换为 multipart/form-data
- python - 如何将多个文本文件读入数组?
- amazon-web-services - 调查 AWS SNS 没有任何副作用?
- ios - 在不使用 react-native-cli 的情况下设置 React Native 项目
- react-native - 标记标注中显示的图像被剪切
- javascript - 为什么不显示:flex; 和 justify-content: center; 将此幻灯片居中?