ssl-server

SSL Веб-сервер с Express, поддерживает HTTP/2

CI Тест Покрытие Аудит

Установка

npm i @sumor/ssl-server --save

Предпосылки

Версия Node.JS

Требуется Node.JS версии 16.x или выше

Требуется ES модуль Node.JS

Поскольку этот пакет написан в формате ES модуля, пожалуйста, измените следующий код в вашем файле package.json:

{
  "type": "module"
}

Использование

Запуск простого сервера

import createApp from '@sumor/ssl-server'
const app = createApp()

// прослушивание порта 443 по умолчанию, и перенаправление 80 на https 443
await app.listen()

Добавление SSL файлов

Пожалуйста, добавьте файлы SSL в корневую папку ssl со следующими именами:

Если файлы не найдены, сервер сгенерирует самоподписанный сертификат.
Если файлы SSL изменены, то будет произведена автоматическая перезагрузка.

Возможности

поддерживает все возможности express, единственное отличие это методы listen и close. Пожалуйста, обратитесь к примеру ниже для более подробной информации.

Добавление промежуточных обработчиков и маршрутов

import createApp from '@sumor/ssl-server'
const app = createApp()
import bodyParser from 'body-parser'

// вы можете добавить любой промежуточный обработчик express
app.use(bodyParser.json())

// добавление маршрутов
app.get('/', (req, res) => {
  res.send('Привет, мир!')
})

// функция listen асинхронная
await app.listen()

Принудительное закрытие сервера

import createApp from '@sumor/ssl-server'
const app = createApp()

// функция listen асинхронная
await app.listen()
// функция close асинхронная
await app.close()

Прослушивание на пользовательском порте

import createApp from '@sumor/ssl-server'
const app = createApp()

// функция listen асинхронная
await app.listen(8443, 8080)
console.log(`Сервер работает на https://localhost:8443/`)
console.log(`Перенаправление сервера работает на http://localhost:8080/`)