在HTML文件中显示存储在MongoDb中的图像

我正在使用Node.js + mongoose + EJS作为视图引擎。

我设法做一个简单的发送命令,检索并发送这个图像在服务器端使用本指南:

使用Multer.js在Express.js应用程序中安装file upload

用mongoose / express在mongodb中存储/显示图像

student.findOne({ 'username': req.body.student_username }, function(err, result) { result.img.data = fs.readFileSync(req.file.path); result.img.contentType = 'image/png'; result.save(); res.contentType(result.img.contentType); res.send(result.img.data); }) 

然而,我正在努力寻找一个指导,我如何能够呈现一个页面,并把图像内的HTML。 我正在使用EJS视图引擎。 任何快速的例子或提示将受到欢迎。

按照学生用户名显示图片:

routes / profile.js

 var userSchema = new Schema({ username: String, img: { data: Buffer, contentType: String } }); var User = mongoose.model('User', userSchema); // Get profile picture router.get('/profile/:userId/picture', function(req,res,next) { User.findById( req.params.userId function(err,user) { if (err) return next(err); res.contentType(user.img.contentType); res.send(user.img.data); }); }); // Get profile router.get('/profile/:username', function(req,res,next) { User.findOne( {'username': req.params.username}, function(err, result) { if (err) return next(err); res.render('profile', { username: result.username, userid: result.id }); }); }); 

view / profile.ejs

 <html><body> <h1><%= username %></h1> <img src='/profile/<%= userid %>/picture' /> </body></html>