Trước hết, bạn phải chuyển đổi dữ liệu đệm sang base64. Bạn có thể làm điều đó trong back-end hoặc front-end đều không thành vấn đề. Chỉ cần sử dụng yourBufferData.toString('base64')
. Sau đó, bạn có thể sử dụng nó.
Tuy nhiên, tôi sẽ đề xuất một cách khác để lưu trữ hình ảnh thay vì lưu trữ dữ liệu nhị phân. Giả sử bạn sử dụng nodejs. Bạn có thể tạo hình ảnh trong kho lưu trữ với dữ liệu nhị phân đó bằng cách sử dụng fs.writeFile
phương pháp. Sau đó, bạn có thể lưu trữ đường dẫn hình ảnh đó trong bản ghi (db). Sau đó, chỉ cần đặt đường dẫn tệp vào ng-src ="đường dẫn tệp mà bạn đã lưu". Đây là ví dụ mà tôi sử dụng:
var path = 'upload/profiles/' +req.body.userId + '_profile.jpg';
fs.writeFile(path, base64data, function(err) {
if (err) return next(err);
User.findByIdAndUpdate({
_id: req.body.userId
}, {
$set: {
profileImg: 'upload/profiles/' +req.body.userId + '_profile.jpg'
}
}, function(err, user) {
if (err) return next(err);
return res.send(user);
});
});
<img ng-src="savedpath">