当前位置: 首页 > 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://www.xdnf.cn/news/917029.html

相关文章:

  • 腾讯开源视频生成工具 HunyuanVideo-Avatar,上传一张图+一段音频,就能让图中的人物、动物甚至虚拟角色“活”过来,开口说话、唱歌、演相声!
  • C++之STL--list
  • LeetCode 239. 滑动窗口最大值(单调队列)
  • 【Hot 100】295. 数据流的中位数
  • 客户端和服务器已成功建立 TCP 连接【输出解析】
  • Doris 数据库深度解析:架构、原理与实战应用
  • 5.4.2 Spring Boot整合Redis
  • Cisco Packer Tracer 综合实验
  • 网页绘制表格
  • 8个AI软件介绍及其工作原理讲解
  • 基于功能基团的3D分子生成扩散模型 - D3FG 评测
  • Java编程中常见的条件链与继承陷阱
  • 60天python训练计划----day46 and day47
  • 比较数据迁移后MySQL数据库和ClickHouse数据仓库中的表
  • Faiss vs Milvus 深度对比:向量数据库技术选型指南
  • 在 Linux 中修改 Apache HTTP Server(httpd)默认端口的完整指南
  • 电路图识图基础知识-电动机制动控制电路(十八)
  • 【力扣】2434.使用机器人打印字典序最小的字符串
  • 计算机组成原理-总线
  • rabbit mq使用TTL和DLX实现延迟队列
  • ios苹果系统,js 滑动屏幕、锚定无效
  • Go 标准库 encoding/gob 快速上手
  • NLP学习路线图(三十一): 迁移学习在NLP中的应用
  • 在ROS中实现消息通信和服务通信Python
  • 【图像处理基石】如何构建一个简单好用的美颜算法?
  • 【win | docker开启远程配置】使用 SSH 隧道访问 Docker的前操作
  • 手拉手处理RuoYi脚手架常见文问题
  • win11系统 Docker Desktop 突然提示Docker Engine stopped解决情况之一
  • CentOS 7.9安装Nginx1.24.0时报 checking for LuaJIT 2.x ... not found
  • 【Linux】系统部分——进程控制