#javascript #express #template-strings
Вопрос:
Я пытаюсь использовать API qrcode npm с express. Когда пользователь вводит адрес в форму, QR-код должен отображаться на веб-сайте. Я долго искал, но не могу понять, так как не понимаю, что именно искать.
Я попробовал следующее:
app.post('/ausgabe', async (req, res) => {
try {
res.setHeader('200', { 'Content-type': 'application/json' });
const eingabe = `'${req.body.address}'`;
const qrImage = await generateQR(eingabe);
console.log(qrImage);
const body = `<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>QR-Code</title>
</head>
<body>
<img ${qrImage} />
</body>
</html>`;
res.send(body);
} catch (err) {
res.status(404).json({
status: 'Fail',
message: err,
});
}
});
Я утешаю.зарегистрировал «qrImage», и он там и правильный, но в HTML ничего не отображается.
Большое спасибо, ТобиГ
Комментарии:
1. Вы включаете все, что выводит строка qr-изображения, можете ли вы показать, что дает вам журнал консоли qrImage?
2. Редактор фрагментов состоит из четырех частей. У каждого есть определенная работа. Почему вы вставили свой скрипт в раздел HTML ?
3. Я думаю, что тип контента неправильный. Это должно быть
content-type: text/html;charset=UTF-8
4. Вам нужно поместить его в
src
атрибут на изображении?<img src="${qrImage}" />
5. @TJBlackman Спасибо, это было решение. API qrcode дал мне некоторый код, который не включал » src=» . Также была ошибка в const eingabe =
'${req.body.address}'
; —> одинарные кавычки были не нужны. Спасибо за вашу помощь.