SSL Web Server with Express, Support HTTP/2
npm i @sumor/ssl-server --save
Требуется версия Node.JS 16.x или выше
Поскольку этот пакет написан на ES-модуле,
пожалуйста, измените следующий код в вашем файле package.json
:
{
"type": "module"
}
import createApp from '@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
. Пожалуйста, обратитесь к примеру ниже для более подробной информации.
import createApp from '@sumor/ssl-server'
const app = createApp()
import bodyParser from 'body-parser'
// вы можете добавить любое промежуточное ПО Express
app.use(bodyParser)
// добавление маршрутов
app.get('/', (req, res) => {
res.send('Hello World!')
})
// метод listen является асинхронным
await app.listen()
import createApp from '@sumor/ssl-server'
const app = createApp()
// метод listen является асинхронным
await app.listen()
// метод close является асинхронным
await app.close()