Я пытаюсь преобразовать полезную нагрузку моего запроса в base64, но результат моего кода не является допустимым изображением base64. Когда я пытаюсь использовать его в браузере, изображение не отображается.
Поэтому я пытаюсь написать простой код для преобразования изображения в base64 или с использованием модулей npm, но результат тот же, и я не получаю правильное изображение!
const request = require('request');
const url = "http://cdn1.giltcdn.com/images/share/uploads/0000/0001/7250/172502872/420x560.jpg";
request({url, gzip: true}, function (err, res, body) {
if(!err){
const data = "data:" + res.headers["content-type"] + ";base64," + Buffer.from(body, 'binary').toString('base64');
console.log(data);
}
});
или
server.get("/test", function(req, res){
const data = "data:" + req.headers["content-type"] + ";base64," + Buffer.from(req.data.payload, 'binary').toString('base64');
console.log(data);
});
Результат тот же (когда я копирую и вставляю в браузере, изображение не отображается):
данные: изображение / JPEG; base64, / F39 / QAQSkZJRgABAQAAAQABAAD9 / QBDAAEBA ...
Когда я использовал этот https://www.base64 -image.de / веб-сайт для преобразования в изображение base64, получился результат (когда я копировал и вставлял в браузер, он работал и отображал изображение):
данные: изображение / JPEG; base64, / 9J / 4AAQSkZJRgABAQAAAQABAAD / 2wBDAAEBA ...
Почему результаты отличаются и почему не работает буфер для base64?