gridfs-stream を試してみようとしていますが、画像ファイルをアップロード コントローラーに投稿する際に問題が発生しています。書き込みストリームを作成しようとすると、戻りますgrid.mongo.ObjectID is not a constructor at new GridWriteStream
私は周りを検索しましたが、この問題を解決するのに役立つものは実際には見つかりませんでした.デバッグでは、私が使用できるものは何も見つかりませんでした.これは私にとってすべて新しいテクノロジーです.
これが私のコードです:
const router = require('express').Router();
const database = require('../config/database');
var mongoose = require('mongoose');
var Grid = require('gridfs-stream');
Grid.mongo = mongoose.connection;
var gfs = new Grid("db", mongoose.mongo.db);
router.get('/', function(req, res) {
res.send("Greetings");
});
router.post('/img', function(req, res) {
var part = req.files.fileField;
var writeStream = gfs.createWriteStream({
filename: part.name,
mode: 'w',
content_type:part.mimetype
});
writeStream.on('close', function() {
return res.status(200).send({
message: 'Success'
});
writeStream.end();
});
});
module.exports = router;
mongoose.mongo
また、2 番目の引数として gfs オブジェクトだけに渡そうとしましたが、読み取り可能であるというエラーもスローされました。readPreferences of undefined