我正在尝试将图片上传到MongoDB。我使用Mongoose,gridfs-stream和其他一些我被告知安装的软件包(我对整个MEAN生态系统来说相对较新)
请求看起来很好,并且用于fs-stream的集合会自动添加到我的数据库中,但请求似乎总是超时,没有返回任何错误,并且nodemon没有记录任何内容。
这是我的代码:
const router = require('express').Router();
const database = require('../config/database');
var mongoose = require('mongoose');
var Grid = require('gridfs-stream');
Grid.mongo = mongoose.connection;
var conn = mongoose.connection;
var gfs = new Grid(conn.db, mongoose.mongo);
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();
})
});
我试过在本地运行mongodb,在mlab上,我也尝试过不同大小的图像,其中大部分都不到10MB而有些不到1MB。由于我对这件事的研究也没有提供任何答案,我无法从这里离开。