ssl-server

Expressを使用したSSL Webサーバー、HTTP/2対応

CI Test Coverage Audit

インストール

npm i @sumor/ssl-server --save

前提条件

Node.JSのバージョン

Node.JSバージョン16.x以上が必要です

Node.JS ESモジュールの必要性

このパッケージはESモジュールで書かれているため、次のコードをpackage.jsonファイルに追加してください:

{
  "type": "module"
}

使用方法

シンプルなサーバーをホストする

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

// デフォルトでポート443でリスニングし、80をhttpsの443にリダイレクト
await app.listen()

SSLファイルの追加

以下の名前でSSLファイルをルートフォルダーsslに追加してください:

見つからない場合、サーバーは自己署名証明書を生成します。
SSLファイルが変更された場合、自動的にリロードされます。

機能

expressの機能をすべてサポートし、唯一の違いはlistencloseメソッドです。詳細は以下の例を参照してください。

ミドルウェアとルートの追加

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

// expressの任意のミドルウェアを追加できます
app.use(bodyParser.json())

// ルートを追加します
app.get('/', (req, res) => {
  res.send('Hello World!')
})

// listenは非同期関数です
await app.listen()

サーバーを強制終了する

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

// listenは非同期関数です
await app.listen()
// closeは非同期関数です
await app.close()

カスタムポートでリスニングする

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

// listenは非同期関数です
await app.listen(8443, 8080)
console.log(`Server is running on https://localhost:8443/`)
console.log(`Redirect server is running on http://localhost:8080/`)