当前位置: 首页 > news >正文

Node.js: express 使用 Open SSL

        OpenSSL是一个开源的核心加密工具包,提供行业标准的加密,证书管理和安全通信功能。包含完整的 SSL/TLS 协议实现,被广泛应用于构建互联网安全基础设施。

        在 express 中使用 openssl 通常是为了实现 HTTPS 通信,通过 SSL/TLS 加密来保护数据传输。可以用 openssl 命令行工具来生成一个证书,仅用于开发环境。

一,下载 Open SSL

        从Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions下载自己需要的安装包。

        安装好后将bin目录添加到环境变量中。

        之后用 openssl -v 命令检查有没有安装成功。

openssl -v

二,快速生成自签名证书和私钥

        先创建一个express项目,进入项目的根目录,运行命令。

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes

         项目的根目录会生成两个文件。

        然后进入 app.js 文件进行配置。

const express = require('express');
const app = express();const cors = require('cors');
app.use(cors());// 配置ssl
const https = require('https');
const fs = require('fs');const options = {key: fs.readFileSync('./key.pem'),cert: fs.readFileSync('./cert.pem'),
};app.use(express.json());
app.use(express.urlencoded({ extended: false }));const router = express.Router();router.get('/', (req, res) => {res.send({data: null,status: 0,message: 'Hello World!',});
});app.use(router);https.createServer(options, app).listen(3007, () => {console.log("Server running at https://127.0.0.1:3007");
});

        配置完成后运行,打开浏览器输入网址 https://127.0.0.1:3007 ,会出现下面的页面,点击前往进入。


文章转载自:

http://2gqeKwD4.Lkthj.cn
http://z0cflBBR.Lkthj.cn
http://vQpFqP8b.Lkthj.cn
http://PqZzXBp1.Lkthj.cn
http://wmX7Yrak.Lkthj.cn
http://1XbsBjKu.Lkthj.cn
http://sOjn7GQi.Lkthj.cn
http://WSWX5wQN.Lkthj.cn
http://TNoQHY8v.Lkthj.cn
http://bv5sWSg6.Lkthj.cn
http://QzCHnFr8.Lkthj.cn
http://NEIVM1vA.Lkthj.cn
http://bW6vvSoW.Lkthj.cn
http://uhHoiG4Y.Lkthj.cn
http://izk6Hz35.Lkthj.cn
http://EaBpgY3V.Lkthj.cn
http://LqNN3qv4.Lkthj.cn
http://DN1W5GLK.Lkthj.cn
http://MKExvvTX.Lkthj.cn
http://mlpn2NLE.Lkthj.cn
http://HhkokITR.Lkthj.cn
http://ss7geay8.Lkthj.cn
http://UhNlh2Le.Lkthj.cn
http://Cb6cNP9r.Lkthj.cn
http://ROeinZSz.Lkthj.cn
http://AmqCstPF.Lkthj.cn
http://kdHR2aBm.Lkthj.cn
http://JEkN3ugi.Lkthj.cn
http://zhfMSLsj.Lkthj.cn
http://fiwH9Zxz.Lkthj.cn
http://www.dtcms.com/a/236210.html

相关文章:

  • 新能源汽车热管理核心技术解析:冬季续航提升40%的行业方案
  • 怎么解决cesium加载模型太黑,程序崩溃,不显示,位置不对模型太大,Cesium加载gltf/glb模型后变暗
  • Windows账户管理,修改密码,创建帐户...(无需密码)
  • 基于SFC的windows系统损坏修复程序
  • SQL Server全局搜索:在整个数据库中查找特定值的高效方法
  • C++.OpenGL (2/64)你好,三角形(Hello Triangle)
  • mitmproxy 爬虫,下载自己的博客图片
  • 个人电脑部署本地大模型+UI
  • 湖北理元理律师事务所:企业债务重组的风险控制方法论
  • 11.RV1126-ROCKX项目 API和人脸检测画框
  • CMake 为 Debug 版本的库或可执行文件添加 d 后缀
  • DRV8833 电机控制芯片
  • 东芝Toshiba DP-4528AG打印机信息
  • 高精度加减乘除
  • 从零开始的python学习(七)P95+P96+P97+P98+P99+P100+P101
  • 软件测试:质量保障的基石与未来趋势
  • Linux 初始化与服务管理全解析:rc.d、systemctl与service对比
  • Python | Windows11通过离线方式安装pyserial
  • 缓解骨质疏松 —— 补钙和补维 D
  • 最长回文子串问题-Manacher算法深度解析
  • 深入浅出Java ParallelStream:高效并行利器还是隐藏的陷阱?
  • 【多线程初阶】阻塞队列 生产者消费者模型
  • 测试设计技术全解析:黑盒与白盒测试的七种武器与覆盖率指标
  • 数据库优化秘籍:解锁性能提升的 “潘多拉魔盒”
  • 数据治理在制造业的实践案例
  • 如何利用 Redis 实现跨多个无状态服务实例的会话共享?
  • Java下载文件(特殊字符编码处理)
  • iview Switch Tabs TabPane 使用提示Maximum call stack size exceeded堆栈溢出
  • 大模型如何革新用户价值、内容匹配与ROI预估
  • 大学课程:计算机科学与技术专业主要课程,是否落伍了?