Видите ли, лучшее, что вы можете сделать, - это просто загрузить изображение на диск и сохранить URL-адрес в MongoDB. Отдохните, когда снова получите изображение. Просто укажите URL-адрес, и вы получите изображение. Код для загрузки следующий.
app.post('/upload', function(req, res) {
// Get the temporary location of the file
var tmp_path = req.files.thumbnail.path;
// Set where the file should actually exists - in this case it is in the "images" directory.
target_path = '/tmp/' + req.files.thumbnail.name;
// Move the file from the temporary location to the intended location
fs.rename(tmp_path, target_path, function(err) {
if (err)
throw err;
// Delete the temporary file, so that the explicitly set temporary upload dir does not get filled with unwanted files.
fs.unlink(tmp_path, function() {
if (err)
throw err;
//
});
});
});
Теперь сохраните целевой путь в своей базе данных MongoDB.
Опять же, при получении изображения просто извлеките URL-адрес из базы данных MongoDB и используйте его в этом методе.
fs.readFile(target_path, "binary", function(error, file) {
if(error) {
res.writeHead(500, {"Content-Type": "text/plain"});
res.write(error + "\n");
res.end();
}
else {
res.writeHead(200, {"Content-Type": "image/png"});
res.write(file, "binary");
}
});