Servidor web SSL con Express, compatible con HTTP/2
npm i @sumor/ssl-server --save
Requiere Node.JS versión 16.x o superior
Dado que este paquete está escrito en módulo ES,
por favor cambia el siguiente código en tu archivo package.json
:
{
"type": "module"
}
import createApp from '@sumor/ssl-server'
const app = createApp()
// escuchar en el puerto 443 por defecto, y redirigir el 80 a https 443
await app.listen()
Por favor agrega archivos SSL en la carpeta raíz ssl
con los siguientes nombres:
domain.crt
domain.key
ca.crt
(Opcional, se agregará a la cadena de certificados)Si no se encuentran, el servidor generará un certificado autofirmado.
Si los archivos SSL cambian, se recargará automáticamente.
soporta todas las características de express, la única diferencia es el método listen
y close
. Por favor, consulta el siguiente ejemplo para más detalles.
import createApp from '@sumor/ssl-server'
const app = createApp()
import bodyParser from 'body-parser'
// se pueden añadir 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()
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()
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 se está ejecutando en https://localhost:8443/`)
console.log(`El servidor de redirección se está ejecutando en http://localhost:8080/`)