Здравствуйте. У меня проблемы с отображением изображений, загруженных в MySQL. Мой стол выглядит так.
CREATE TABLE IF NOT EXISTS images(id int primary key auto_increment,
image_id varchar(255) NOT NULL, img LONGBLOB NOT NULL);
Я работаю с загруженным изображением на своем сервере примерно так
const multer = require('multer');
const upload = multer({ dest: `static/images/product_images/` });
app.post('/upload-image', upload.single('img'), (req, res) => {
const img = req.file;
fs.readFile(img.path, (err, data) => {
connection.query(`
INSERT INTO product_images(product_id, img)
VALUES(?,?)`,
[
randomId(),
data
],
(err, results) => {
//etc...
});
});
});
Теперь, если я получу это изображение, оно будет выглядеть так
"img": {
"type": "Buffer",
"data": [
255,
216,
255,
224,
0,
16,
74,
70,
etc..
]
}
Я делаю это правильно? Когда я получаю это изображение и пытаюсь отобразить его на внешнем интерфейсе, используя
<img src='img-blob'/>
Изображение не отображается. Что я делаю неправильно?
Я знаю, что загрузка изображений в БД считается плохой идеей, но у меня нет другого выбора