【问题标题】:Get image from Mysql with NodeJs, Express, EJS使用 NodeJs、Express、EJS 从 Mysql 获取图像
【发布时间】:2018-04-06 08:33:19
【问题描述】:

我想使用 NodeJS 和 EJS 模板从 MySQL 获取图像。 我认为问题在于我未能将buff数据传输到base64。 我已经尝试了很多解决方案,但没有成功。我的正确代码是...

Index.ejs

<% for ( var i = newsData.length -1; i >= 0; i--){ %>
<img src="<%= newsData[i].image %>">
<h3><%= newsData[i].title  %></h3>    //Which is working
<p><%= newsData[i].content %></p>     //Which is working

我试过用

<%- newsData[i].image %>

这给了我...的结果

Website show data

routes.js

app.get('/news', isLoggedIn, function({user}, res, next) {

var newsData = '';
db.query('SELECT date,title,content,image FROM news', function(err, rows) {
    if (err) {
        console.log(err);
    }
    var newsData = rows;

    // use index.ejs
    res.render('../views/dashboard/html/table/news.ejs', { title: 'Account Information', newsData: newsData, user});

});

});

顺便说一下,我存储在Mysql中的图片格式是“Blob”。谢谢

亲切的问候。

【问题讨论】:

标签: javascript mysql node.js express ejs


【解决方案1】:

试试下面的代码

<img src="data:image/jpeg;base64,<%- newsData[i].image %>"/>

【讨论】:

  • 试过了,结果还是一样,我假设我当前的 newsData.image 还不是 base64,也试过 toString 但没有成功
  • 你从 db 得到了什么,你能分享你的编码图像数据
  • 你能把&lt;%- newsData[i].image %&gt;这一行的完整值粘贴过来吗
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-28
  • 2015-12-14
  • 1970-01-01
  • 2012-09-27
  • 2016-11-01
  • 2013-07-19
  • 2015-09-06
相关资源
最近更新 更多