2015-08-02 4 views
0

gridfs поток загрузить файл не работает, но загрузить файл работает плзло дать Растворgridfs поток загрузить файл в MongoDB не работает в коде node.js сервера

app.post('/file', function(req, res) { 
var busboy = new Busboy({ 
    headers: req.headers 
}); 
var fileId = new mongo.ObjectID(); 
var file = filename(); 
busboy.on('file', function(fieldname, file, filename, encoding, mimetype) { 
    if (!file) return res.send({ 
     result: 'NO_FILE_UPLOADED This Error by not upload any file' 
    }); 
    console.log('File [' + fieldname + '] got ' + data.length + ' bytes'); 
    var writeStream = gfs.createWriteStream({ 
     _id: fileId, 
     filename: my_file.txt, 
     mode: 'w', 
     chunkSize: 1024, 
     root: fs, 
     content_type: mimetype 
    }); 

// here how can i give a path to read stream ? 
// File id is a mongodbid its ok. but what about file name 

fs.createReadStream('/some/path').pipe(writestream); 
}).on('finish', function() { 
    res.writeHead(200, { 
     'content-type': 'text/html' 
    }); 
    res.end('<a href="http://localhost:49106/file/' + fileId.toString() + '">download file</a>'); 
}); 
req.pipe(busboy);//its working 
}); 

gridfs-поток коды загрузки файла не работает файл скачать код работает очень хорошо. Как я могу установить путь к файлам readstream в пути.

ответ

0

busboy никогда не записывает непосредственно на диск. То, что вы получите это обычный читаемый поток (file), поэтому трубы, что ваш writeStream:

file.pipe(writeStream); 

вместо:

fs.createReadStream('/some/path').pipe(writestream); 

Кроме того, ваш if (!file) проверка никогда не будет выполняться, поскольку file будет всегда, и console.log('File [' + fieldname + '] got ' + data.length + ' bytes'); неверен, поскольку в этой области нет переменной data.

+0

даже ты "file.pipe (writeStream); файлы не загружаются в файл writestream..but, если я добавляю файл в mongodb, используя robomongo .. и выдаю видео id из этого db ..... его работающий .... так что только readStream, работающий в этом коде ..... писать Stream не работает .... plz help me –

+0

Его полный код моего server.js, пожалуйста, решите проблему записи –

+0

https://gist.github.com/pos1tron/ 094ac862c9d116096572 –

 Смежные вопросы

  • Нет связанных вопросов^_^