SSL-Webserver mit Express, Unterstützung für HTTP/2
npm i @sumor/ssl-server --save
Benötigt Node.JS-Version 16.x oder höher
Da dieses Paket in ES-Modul geschrieben ist,
ändern Sie bitte den folgenden Code in Ihrer package.json
-Datei:
{
"type": "module"
}
import createApp from '@sumor/ssl-server'
const app = createApp()
// Standardmäßig auf Port 443 hören und 80 auf https 443 umleiten
await app.listen()
Bitte fügen Sie SSL-Dateien in den Stammordner ssl
mit den folgenden Namen hinzu:
domain.crt
domain.key
ca.crt
(optional, wird an die Zertifikatskette angehängt)Falls nicht vorhanden, generiert der Server ein selbstsigniertes Zertifikat. Bei Änderungen an den SSL-Dateien erfolgt automatisches Neuladen.
Es unterstützt alle Express-Funktionen, der einzige Unterschied liegt in den Methoden listen
und close
. Details entnehmen Sie bitte dem folgenden Beispiel.
import createApp from '@sumor/ssl-server'
const app = createApp()
import bodyParser from 'body-parser'
// Sie können beliebige Express-Middleware hinzufügen
app.use(bodyParser)
// Routen hinzufügen
app.get('/', (req, res) => {
res.send('Hallo Welt!')
})
// listen ist eine asynchrone Funktion
await app.listen()
import createApp from '@sumor/ssl-server'
const app = createApp()
// listen ist eine asynchrone Funktion
await app.listen()
// close ist eine asynchrone Funktion
await app.close()
import createApp from '@sumor/ssl-server'
const app = createApp({
port: 8443,
redirectPort: 8080
})
// listen ist eine asynchrone Funktion
await app.listen()