使用 Express 支持 HTTP/2 的 SSL Web 服务器
npm i @sumor/ssl-server --save
要求 Node.JS 版本为 16.x 或更高
由于此包是用 ES 模块编写的,
请在您的 package.json
文件中更改以下代码:
{
"type": "module"
}
import createApp from '@sumor/ssl-server'
const app = createApp()
// 默认监听端口 443,并将 80 重定向到 https 443
await app.listen()
请在根目录下的ssl
文件夹中添加以下文件名的 SSL 文件:
domain.crt
domain.key
ca.crt
(可选项,将附加到证书链)如果找不到这些文件,服务器将生成自签名证书。
如果 SSL 文件发生更改,它将自动重新加载。
支持所有 express 功能,唯一的区别是listen
和close
方法。请参考以下示例获取更多详细信息。
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(`服务器正在运行在 https://localhost:8443/`)
console.log(`重定向服务器正在运行在 http://localhost:8080/`)