Serveur Web SSL avec Express, prend en charge HTTP/2
npm i @sumor/ssl-server --save
Nécessite Node.JS version 16.x ou supérieure
Comme ce package est écrit en module ES, veuillez modifier le code suivant dans votre fichier package.json
:
{
"type": "module"
}
import createApp from '@sumor/ssl-server'
const app = createApp()
// écoute sur le port 443 par défaut, et redirige le port 80 vers le https 443
await app.listen()
Veuillez ajouter les fichiers SSL dans le dossier racine ssl
avec les noms suivants :
domain.crt
domain.key
ca.crt
(Optionnel, il sera ajouté à la chaîne de certificats)S'ils ne sont pas trouvés, le serveur générera un certificat auto-signé.
Si les fichiers SSL changent, ils seront rechargés automatiquement.
il prend en charge toutes les fonctionnalités d'express, la seule différence est la méthode listen
et close
. Veuillez vous référer à l'exemple ci-dessous pour plus de détails.
import createApp from '@sumor/ssl-server'
const app = createApp()
import bodyParser from 'body-parser'
// vous pouvez ajouter un middleware express quelconque
app.use(bodyParser.json())
// ajoutez des routes
app.get('/', (req, res) => {
res.send('Bonjour le monde !')
})
// listen est une fonction asynchrone
await app.listen()
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()
import createApp from '@sumor/ssl-server'
const app = createApp()
// listen est une fonction asynchrone
await app.listen(8443, 8080)
console.log(`Le serveur fonctionne sur https://localhost:8443/`)
console.log(`Le serveur de redirection fonctionne sur http://localhost:8080/`)