преобразовать массив байтов в изображение в angular6 - PullRequest
0 голосов
/ 20 ноября 2018

Я отправил файл изображения в байтовом массиве с сервера.Теперь мне нужно преобразовать это в файл jpeg и отобразить его на веб-странице.

Код:

app.get('/getPhoto/:hash',function(req, res){
    console.log(req.params.hash);
    invoke = require('/Users/sanjeev.natarajan/ipfs/file1.js');

    invoke.getfile(req.params.hash).then((str)=>{
        console.log("resu",str)

        res.send({"Result":str});
    })
    .catch((error) => {
        res.send({"Error":"error in fetching the file through the hashcode"});
    })    
});

Я получаю данные из бэкэнда;Теперь мне нужно преобразовать это в изображение в angular6

1 Ответ

0 голосов
/ 20 ноября 2018

Вы можете преобразовать байтовый массив в строку в кодировке Base64, используя функцию btoa , а затем использовать URL данных для отображения изображения.Вам нужно знать MIME-тип изображения:

var bytes = [ ... ]; // get from server
var uints = new UInt8Array(bytes);
var base64 = btoa(String.fromCharCode(null, uints));
var url = 'data:image/jpeg;base64,' + base64; // use this in <img src="..."> binding
...