如何从 Hapi 的 GridFS-Stream 库中返回 Stream 作为响应?

问题描述

我正在尝试将 Hapi 与来自 mongo 的库 GridFS-stream 连接,以便能够在 mongodb 上存储文件,到目前为止我能够将文件流式传输到数据库,但我无法在此处读取它们是代码我现在有了。此时它返回数据,但我不知道采用哪种格式或如何进行

const Grid = require('gridfs-stream');
const FileType = require('file-type');
const { Readable } = require('stream');
const { Homework } = require('../../models');

const Handler = {
  readHomeworkFile: {
    handler: async (request,h) => {
      const gfs = Grid(Mongoose.connection.db);

      const readStream = gfs.createReadStream({
        _id: request.params.id,root: 'homeworkFile',});

      readStream.on('error',(error) => {
        console.log(error);
      });
      // console.log(readStream);
      // return readStream.pipe(request.raw.res);
      return h.response(readStream)
        .type('text/event-stream')
        .header('Connection','keep-alive')
        .header('content-encoding','none')
        .header('Cache-Control','no-cache');
    },},};

module.exports = Handler;

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)