ssl-server

Servidor Web SSL con Express, compatible con HTTP/2

CI Test Cobertura Audit

Instalación

npm i @sumor/ssl-server --save

Prerrequisitos

Versión de Node.JS

Requiere Node.JS versión 16.x o superior

Requiere módulo ES de Node.JS

Ya que este paquete está escrito en módulo ES, por favor cambia el siguiente código en tu archivo package.json:

{
  "type": "module"
}

Uso

Hospedar un servidor simple

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

// escucha en el puerto 443 por defecto y redirige el 80 a https 443
await app.listen()

Agregar archivos SSL

Por favor agrega los archivos SSL en la carpeta raíz ssl con los siguientes nombres:

Si no se encuentran, el servidor generará un certificado autofirmado.
Si los archivos SSL cambian, se recargarán automáticamente.

Características

Soporta todas las características de express, la única diferencia son los métodos listen y close. Por favor consulta el siguiente ejemplo para más detalles.

Agregar middlewares y rutas

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

// puedes agregar cualquier middleware de express
app.use(bodyParser.json())

// agregar rutas
app.get('/', (req, res) => {
  res.send('¡Hola Mundo!')
})

// listen es una función asíncrona
await app.listen()

Forzar el cierre del servidor

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

// listen es una función asíncrona
await app.listen()
// close es una función asíncrona
await app.close()

Escuchar en un puerto personalizado

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

// listen es una función asíncrona
await app.listen(8443, 8080)
console.log(`El servidor está en ejecución en https://localhost:8443/`)
console.log(`El servidor de redirección está en ejecución en http://localhost:8080/`)