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)

// ルートを追加
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({
  port: 8443,
  redirectPort: 8080
})

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