node 创建本地 https 服务
node 创建本地 https 服务
·
node 创建本地 https 服务
node自带了https模块,跟http模块的使用类似,不过在创建服务时使用CA证书。
mkcert
mkcert 是一个简单的工具,用于制作本地信任的开发证书。它不需要配置。在项目中安装后就可以直接使用。
npm i mkcert -D
这个库非常简单,只有两个指令
create-ca: 创建证书颁发机构create-cert: 创建证书(需要先根据 create-ca 命令创建的文件才能创建)
上面两个指令都设置有默认的配置,可以直接运行生成证书。
npx mkcert create-ca
npx mkcert create-cert
此时根目录下会生成 4 个文件
-ca.crt
-ca.key
-cert.crt
-cert.key
此时密钥是cert.key文件,证书是cert.crt文件。
此时便可以根据生成的文件来启动https
使用 https 模块
const https = require("https");
const fs = require("fs");
const options = {
// 私钥
key: fs.readFileSync(__dirname + "/cert.key"),
// 由私钥生成的证书
cert: fs.readFileSync(__dirname + "/cert.crt"),
};
const app = https.createServer(options, (req, res) => {
res.end("https server");
});
app.listen(8080);
使用 express 创建服务
const https = require("https");
const express = require("express");
const fs = require("fs");
const options = {
// 私钥
key: fs.readFileSync(__dirname + "/ca/cert.key"),
// 由私钥生成的证书
cert: fs.readFileSync(__dirname + "/ca/cert.crt"),
};
const app = express();
app.get("*", (req, res) => {
res.send("https server");
});
// ...
https.createServer(options, app).listen(8080);
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)