ssl-server

Serveur Web SSL avec Express, supporte HTTP/2

CI Test Coverage Audit

Installation

npm i @sumor/ssl-server --save

Prérequis

Version de Node.JS

Nécessite Node.JS en version 16.x ou supérieure

Nécessite le module ES de Node.JS

Comme ce package est écrit en module ES, veuillez modifier le code suivant dans votre fichier package.json :

{
  "type": "module"
}

Utilisation

Héberger un simple serveur

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

// écoute sur le port 443 par défaut, et redirige le 80 vers le https 443
await app.listen()

Ajouter des fichiers SSL

Veuillez ajouter les fichiers SSL dans le dossier racine ssl avec les noms suivants :

Si les fichiers SSL ne sont pas trouvés, le serveur générera un certificat autosigné. En cas de modification des fichiers SSL, il se rechargera automatiquement.

Fonctionnalités

Il prend en charge toutes les fonctionnalités express, la seule différence étant la méthode listen et close. Veuillez consulter l'exemple ci-dessous pour plus de détails.

Ajouter des middleware et des routes

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

// vous pouvez ajouter n'importe quel middleware Express
app.use(bodyParser.json())

// ajouter des routes
app.get('/', (req, res) => {
  res.send('Hello World!')
})

// listen est une fonction asynchrone
await app.listen()

Forcer la fermeture du serveur

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

// listen est une fonction asynchrone
await app.listen()
// close est une fonction asynchrone
await app.close()

Écouter sur un port personnalisé

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

// listen est une fonction asynchrone
await app.listen(8443, 8080)
console.log(`Serveur fonctionne sur https://localhost:8443/`)
console.log(`Serveur de redirection fonctionne sur http://localhost:8080/`)