【问题标题】:How to upload file from client to DB with GraphQL and mongoose?如何使用 GraphQL 和猫鼬将文件从客户端上传到数据库?
【发布时间】:2020-09-13 05:18:43
【问题描述】:

我正在尝试将文件从我的客户端 (React/GraphQL) 上传到 MongoDB。为此,我使用了 gridFSBucket,但此代码出现Maximum call stack size exceeded 错误:

  async upload(request, { id, file }) {
    const {
      filename, createReadStream,
    } = await file[0];
    const bucket = new mongoose.mongo.GridFSBucket(mongoose.connection.db, { bucketName: 'uploads' });
    const uploadStream = bucket.openUploadStream(filename);
    createReadStream()
      .pipe(uploadStream)
      .on('error', console.log('error'))
      .on('finish', console.log('finish'));
    return { filename };
  }

要解决这个问题,我显然必须通过节点 12,但我宁愿不...

我可以用另一种方式解决这个问题吗?如果没有,我还能怎么上传?

【问题讨论】:

    标签: mongoose upload graphql gridfs


    【解决方案1】:

    将 fs-capacitor(graphql-upload 依赖项)更新到 3.0.0 以修复 Maximum call stack size exceeded 问题

    【讨论】:

      猜你喜欢
      • 2020-12-04
      • 2021-03-19
      • 2019-01-15
      • 1970-01-01
      • 2016-10-28
      • 2018-12-10
      • 2020-12-01
      • 1970-01-01
      • 2017-03-19
      相关资源
      最近更新 更多