使用Express构建的SSL Web服务器,支持HTTP/2
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)
// 添加路由
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)