我正在寻找从 MongoDB 检索图像并显示它们的好方法。例如,要检索个人资料图片并将其显示在个人资料页面上,我目前是这样做的:
个人资料页
block content
h1= session.user.name
img(src='/avatars')
路线
exports.avatars = (req, res) ->
users.find req.session.user, (err, user) ->
if user
res.writeHead('200', {'Content-Type': 'image/png'})
res.end(user.avatar.data, 'binary')
else
res.locals.flash = err
res.render('index', {title: 'Home'})
基本上,我呈现个人资料页面,img
标签向服务器发送一个请求,以从数据库中获取用户的图片。我将图像保存为 MongoDB 中的 BinData。不使用GridFS
,因为我希望图片很小。
有一个更好的方法吗??我尝试使用将图像数据直接发送到玉视图,res.render('users/show', {picture: data})
但img
标签不喜欢这样,我不清楚为什么。这种方法是死胡同吗?
任何意见/建议将不胜感激。谢谢!