Для подключения HTTPS в fastify вам понадобится SSL-сертификат и закрытый ключ. Вы можете получить их от организации, выдавшей вам ваш домен, или сгенерировать их самостоятельно.
- Сгенерируйте ваш SSL-сертификат и закрытый ключ, если у вас их еще нет. Для этого вы можете воспользоваться инструментом, таким как OpenSSL.
- Создайте новый файл JavaScript с именем
server.js
и откройте его.
- Установите fastify с помощью следующей команды:
npm install fastify
- Вставьте следующий код в файл
server.js
:
const fastify = require('fastify')({}) fastify.register(require('fastify-https-redirect')) fastify.register(function (fastify, options, done) { const httpsOptions = { key: fs.readFileSync('/path/to/your/private.key'), cert: fs.readFileSync('/path/to/your/certificate.crt') } fastify.register(require('fastify-https'), httpsOptions) fastify.get('/', function (req, reply) { reply.send({message: 'Hello, world!'}) }) done() }) fastify.listen(3000, function (err, address) { if (err) { fastify.log.error(err) process.exit(1) } console.log(`Server listening on ${address}`) })
- Обратите внимание, что вам необходимо заменить путь к вашему закрытому ключу (
/path/to/your/private.key
) и вашему сертификату (/path/to/your/certificate.crt
) в коде выше.
- Сохраните изменения в файле
server.js
.
- Запустите ваш сервер, выполнив следующую команду:
node server.js
Теперь ваш сервер будет работать на порту 3000, используя HTTPS.
Это весь процесс подключения HTTPS в fastify. Учтите, что в приведенном выше коде не обрабатывается перенаправление HTTP на HTTPS. Если вы хотите, чтобы ваш сервер автоматически перенаправлял соединения HTTP на HTTPS, вы можете использовать плагин fastify-https-redirect, как показано в коде выше.