文章目录
- 🌟前言
- 🌟https模块
- 🌟https原理
- 🌟SSL
- 🌟使用https
- 🌟搭建HTTPS服务器
- 🌟写在最后
🌟前言
哈喽小伙伴们,新的专栏 Node 已开启;这个专栏里边会收录一些Node的基础知识和项目实战;今天我们带领大家初识一下 Node内置模块 https模块
;让我们一起来看看吧🤘
🌟https模块
在网络安全问题日益严峻的今天,网站采用HTTPS是个必然的趋势。
WEB服务一般常用的两种通信协议
http
和https
:
- http默认采用80作为通讯端口,对于传输采用不加密的方式
- https默认采用443,对于传输的数据进行加密传输
在nodejs中,提供了 https 这个模块来完成 HTTPS 相关功能。
🌟https原理
HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单来讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
https = http + ssl
,顾名思义,https是在http的基础上加上了SSL保护壳,信息的加密过程就是在SSL中完成的
🌟SSL
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。
SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层:
SSL记录协议(SSL Record Protocol)
:它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。SSL握手协议(SSL Handshake Protocol)
:它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
🌟使用https
使用https模块时,需要通过以下方法来引入:
const https = require('https');
对外提供HTTPS服务,需要有HTTPS证书。
const httpsServer = https.createServer([options][, requestListener])
🌟搭建HTTPS服务器
const https = require('https');
const fs = require('fs');
const options = {
key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem')
};
https.createServer(options, (req, res) => {
res.writeHead(200);
res.end('hello world\n');
}).listen(8000);
🌟写在最后
更多Node知识以及API请大家持续关注,尽请期待。各位小伙伴让我们 let’s be prepared at all times!
✨原创不易,还希望各位大佬支持一下!
👍 点赞,你的认可是我创作的动力!
⭐️ 收藏,你的青睐是我努力的方向!
✏️ 评论,你的意见是我进步的财富!