ssl-server

SSL Web Server with Express, Support 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()