Я не совсем понимаю, почему мне нужно кодировать мои двоичные данные, представляющие изображение PNG, в строку base64, чтобы я мог отправлять / отображать их через API REST?
Это мой код, который работает:
import png from 'fast-png';
api.get('/img', (req, res) => {
...
let pngImage = png.encode({
data: pixelData,
width: columns,
height: rows,
alpha: false,
components: samplesPerPixel
});
let base64 = Buffer.from(pngImage, 'binary').toString('base64');
result = new Buffer(base64, 'base64');
res.contentType('image/png');
res.send(result);
}
Код, который не работает:
import png from 'fast-png';
api.get('/img', (req, res) => {
...
let pngImage = png.encode({
data: pixelData,
width: columns,
height: rows,
alpha: false,
components: samplesPerPixel
});
res.contentType('image/png');
res.send(pngImage.buffer, 'binary');
}
Если кто-то может объяснить, почему он не работает в этом случае?
Спасибо