SSL веб-сервер с Express, поддерживает HTTP/2
npm i @sumor/ssl-server --save
Требуется версия Node.JS 16.x или выше
Поскольку этот пакет написан в виде ES модуля,
пожалуйста, измените следующий код в вашем файле package.json
:
{
"type": "module"
}
const createApp = require('@sumor/ssl-server')
const app = createApp()
// слушать порт 443 по умолчанию и перенаправлять с 80 на https 443
await app.listen()
Пожалуйста, добавьте файлы SSL в корневую папку ssl
с такими именами:
domain.crt
domain.key
ca.crt
(Необязательно, будет добавлено к цепочке сертификатов)Если файлы не найдены, сервер создаст самоподписанный сертификат.
Если файлы SSL изменены, они будут автоматически перезагружены.
Поддерживаются все функции express, единственное отличие - методы listen
и close
. Пожалуйста, обратитесь к приведенному ниже примеру для получения дополнительной информации.
const createApp = require('@sumor/ssl-server')
const app = createApp()
const bodyParser = require('body-parser')
// вы можете добавлять любое промежуточное ПО express
app.use(bodyParser)
// добавление маршрутов
app.get('/', (req, res) => {
res.send('Привет, мир!')
})
// метод listen является асинхронным
await app.listen()
const createApp = require('@sumor/ssl-server')
const app = createApp()
// метод listen является асинхронным
await app.listen()
// метод close является асинхронным
await app.close()