Ein Sumor Cloud Tool.
Weitere Dokumentation
SSL-Webserver mit Express, unterstützt HTTP/2
npm i @sumor/ssl-server --save
Benötigt Node.JS Version 18.x oder höher
Da dieses Paket in ES-Modul geschrieben ist,
bitte fügen Sie den folgenden Code in Ihrer package.json
-Datei hinzu:
{
"type": "module"
}
import createApp from '@sumor/ssl-server'
const app = createApp()
// lauscht standardmäßig auf Port 443, wenn nicht anders angegeben, und leitet 80 auf https 443 um
await app.listen()
console.log('Server läuft unter https://localhost:443/')
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)Wenn nicht gefunden, generiert der Server ein selbstsigniertes Zertifikat.
Bei Änderungen an den SSL-Dateien erfolgt ein automatischer Neustart.
Es unterstützt alle Funktionen von express, der einzige Unterschied liegt 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 jede Express-Middleware hinzufügen
app.use(bodyParser.json())
// 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()
// listen ist eine asynchrone Funktion
await app.listen(8443, 8080)
console.log(`Server läuft unter https://localhost:8443/`)
console.log(`Umleitungs-Server läuft unter http://localhost:8080/`)
import createApp from '@sumor/ssl-server'
const app = createApp()
// listen ist eine asynchrone Funktion
await app.listen(null, 8080)
console.log(`Umleitungs-Server läuft unter http://localhost:8080/`)
Standardmäßig verwendet der SSL-Server die neueste Express-Version mit Langzeitunterstützung. Sie können Ihre eigene Express-App verwenden, indem Sie sie der createApp
-Funktion übergeben.
import createApp from '@sumor/ssl-server'
import express from 'express'
const expressApp = express()
expressApp.get('/', (req, res) => {
res.send('Hallo Welt!')
})
const app = createApp(expressApp)
// listen ist eine asynchrone Funktion
await app.listen()
console.log('Server läuft unter https://localhost:443/')