Давайте сделаем простой REST API на Node.js и Express, который будет генерировать QR-коды для любой ссылки. Если у вас ещё не установлены Node.js
и npm
, установите их с официального сайта.
Шаг 1. Создание нового проекта npm
Откройте терминал и введите или скопируйте эти три команды:
mkdir qr-api
cd qr-api
npm init -y
Появится новая папка с пустым проектом на Node.js, и вы перейдёте сразу в неё:
Шаг 2. Установка express и qrcode
Нам понадобятся пакеты express
(для создания сервера) и qrcode
(для генерации QR-кодов). Установим оба:
npm install express qrcode
Так выглядит успешная установка:
Шаг 3. Код API
В Visual Studio Code (или другом редакторе кода) в папке с проектом создайте файл index.js
и добавьте следующий код:
const express = require('express');
const QRCode = require('qrcode');
const app = express();
const PORT = 3000;
app.get('/generate', async (req, res) => {
const url = req.query.url;
if (!url) {
return res.status(400).send('URL не указан.');
}
try {
const qr = await QRCode.toDataURL(url);
res.send(`<img src="${qr}" />`);
} catch (err) {
res.status(500).send('Ошибка при создании QR-кода.');
}
});
app.listen(PORT, () => {
console.log(`Сервер запущен по адресу http://localhost:${PORT}`);
});
Этот код создаёт сервер, который принимает URL через query-параметр и возвращает QR-код этой ссылки.
Шаг 4. Запуск сервера
Чтобы запустить API, напишите в терминале эту команду и нажмите Enter.
node index.js
Если всё верно — увидите сообщение о том, что сервер запущен:
Шаг 5. Проверка, что всё работает
Откройте браузер и перейдите по адресу:
http://localhost:3000/generate?url=https://htmlacademy.ru
Вы увидите QR-код для ссылки https://htmlacademy.ru
:
Теперь у вас есть простой сервер, который генерирует QR-коды для ссылок. Используйте с умом 🐈