0

:) 你好!

我试图弄清楚如何在 express 框架中将上传文件直接写入 GridFs。

我编写了如下代码,问题是永远不会发出文件事件“文件”。

:(

var mongoose = require('mongoose');
var express = require('express');
var router = express.Router();
var fs = require('fs');
var Busboy = require('busboy');

router.get('/test', function(req, res){
 res.render('test-gridfs', {title: 'TESTING GRIDFS'});
})

router.post('/test', function(req, res){
 var busboy = new Busboy({headers: req.headers});
 var gfs = req.gfs;

 busboy.on('file', function(fieldname, file, filename, encoding, mimetype) {
  console.log('File [' + fieldname + ']: filename: ' + filename);
  file.pipe(gfs.createWriteStream({
   filename: 'moon.jpg',
   content_type: 'image/jpg'
  }))
 });
 busboy.on('finish', function() {
  res.json({result: 'finish'});
 });
 req.pipe(busboy);
})
module.exports = router;
4

0 回答 0