使用npm包Lien搭建web服务配置SSL证书报错如何解决?
问题排查与解决方案
报错根因
对照Lien的内部SSL处理逻辑和你的初始化配置可以定位到错误点:
- Lien内部读取证书文件时,读取的是
ssl.cert字段作为证书路径参数传入fs.readFileSync - 你的配置中仅定义了
ssl.cer字段,没有声明ssl.cert,导致Lien拿到的证书路径是undefined,不符合fs.readFileSync的参数类型要求,触发类型错误。
修复方案
将配置中的cer字段重命名为cert即可解决报错,修改后的代码如下:
let server = new Lien({ host: "localhost", port: 5000, ssl: { cert: path.join(__dirname, 'certificate.cer'), key: path.join(__dirname, 'privatekey.txt') } });
额外优化说明:path.join本身支持传入多个路径片段自动拼接,无需手动拼接斜杠,上述代码已同步调整为更规范的写法
内容的提问来源于stack exchange,提问作者Gaurish
相关产品推荐
相关产品推荐

