SSL-Webserver mit Express, Unterstützung für HTTP/2
npm i @sumor/ssl-server --save
Erfordert 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()
// Hört standardmäßig auf Port 443 und leitet 80 zu https 443 um
await app.listen()
Fügen Sie bitte SSL-Dateien in den Stammordner ssl mit den folgenden Namen hinzu:
domain.crtdomain.keyca.crt (Optional, wird an die Zertifikatskette angehängt)Wenn nicht gefunden, wird der Server ein selbstsigniertes Zertifikat generieren. Bei Änderungen an den SSL-Dateien wird automatisch neu geladen.
Es unterstützt alle Funktionen von express, der einzige Unterschied besteht in den Methoden listen und close. Bitte beachten Sie das folgende Beispiel für weitere Details.
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.json())
// Routen hinzufügen
app.get('/', (req, res) => {
res.send('Hallo Welt!')
})
// listen ist async function
await app.listen()
import createApp from '@sumor/ssl-server'
const app = createApp()
// listen ist async function
await app.listen()
// close ist async function
await app.close()
import createApp from '@sumor/ssl-server'
const app = createApp()
// listen ist async function
await app.listen(8443, 8080)
console.log(`Server läuft auf https://localhost:8443/`)
console.log(`Weiterleitungsserver läuft auf http://localhost:8080/`)