【发布时间】:2017-07-12 17:04:41
【问题描述】:
我从 Nodejs 服务器接收到一个 bindata,现在我需要显示一个图像。
我怎样才能做到这一点?有什么方法可以将 bindata 转换为 JPEG 或任何其他格式?或者是否可以在服务器中转换它然后发送该图像以做出反应?
这是我尝试使用图像标签显示二进制数据 (item.Image.data.data) 的方式:
<img src={item.Image.data.data} />
这是我的详细反应代码 sn-p:
componentDidMount(){
let self = this;
axios.get('http://localhost:8080/list')
.then(function(data) {
console.log(data);
self.setState({post:data.data});
});
}
<ul className="w3-ul w3-card-4 w3-light-grey">
{ this.state.post.map((item, index) => {
return (
<Link to="/displaylist" style={{ textDecoration: 'none' }} key={index}>
<li className=" w3-hover-green w3-padding-16" onClick={this.handleClick(item.Id)}>
<img src={item.Image.data.data} className="w3-left w3-circle w3-margin-right" width="60px" height="40px" />
<span>{item.Firstname}</span><br/><br/>
</li>
</Link>
)}
)}
</ul>
这是我的nodejs代码sn-p:
server.get('/list', function(req, res) {
databaseInterface.listStudent(function(err, students) {
var myJSON = students;
res.json(myJSON);
// You should see the newly saved student here
});
});
【问题讨论】:
-
你的意思是你的图片是base64字符串格式的?
-
是的,喜欢一系列字符。
-
你知道如何实现吗?
-
您尝试过以下建议吗?
<img src="data:image/jpeg;base64,{binary data}" />我认为这应该可行 -
是的,我都试过了。但我收到这样的错误:GET data:image/jpeg;base64,{item.Image.data.data} for using this
标签: javascript node.js reactjs