node搭建本地https和wss服务(SSL证书安全)

这篇具有很好参考价值的文章主要介绍了node搭建本地https和wss服务(SSL证书安全)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

node 后台 app.js配置

const express = require('express') //加载express资源
const bodyParser=require("body-parser")//一个Express中间件,用于解析HTTP请求体,获得请求的数据

const app = express() //返回一个express服务器对象
const https = require('https')
const fs = require('fs')
const path = require('path');
const logger=require("morgan");//日志模块
const favicon=require("serve-favicon") //用于设置和提供 favicons(网页标签图标)。
const WebSocket = require('ws')


//导入ajaxRouter这个路由
const route=require("./routes/backmtage/ajaxRouter")
const route1=require("./routes/appoet/ajaxRouter");

// 日志模块放在最上方
app.use(logger("dev"))//调用日志,配置为dev(开发)模式

// 使用bodyParser应该在路由前
// extended:false:表示使用系统模块query string来处理数据
// extended:true 表示使用第三方模块qs来处理
app.use(bodyParser.urlencoded({extended:false}));
app.use(bodyParser.json());



//使用路由,放在静态资源路径前面
app.use(route)
app.use(route1)

//设置静态资源路径
//__dirname指向当前文件的根目录
app.use(express.static(__dirname+"/public"))
//设置小图标
app.use(favicon(__dirname+"/public/images/favicon.ico"))


//ssl证书
const options = {
    key:fs.readFileSync(path.join(__dirname,'./ssl/xxxxxx.cn.key')),
    cert:fs.readFileSync(path.join(__dirname,'./ssl/xxxxxx.cn.pem'))
}

//创建https服务器
const httpsServer = https.createServer(options,app,(req,res)=>{
    res.writeHead(200, { 'Content-Type': 'text/html;charset=utf8' });
    res.end('This is a https server!\n') 
})

httpsServer.listen(8886, () => {
    // console.log('服务已开启8886');
    console.log('HTTPS Server is running on: https://xxxx.com:%s', 9999);
})


const wss = new WebSocket.Server(
    {
        server:httpsServer
    },
    ()=>{
        console.log('socket start');
    }
)
//建立连接
wss.on('connection',ws=>{
    //接收数据
    ws.on('message',data=>{
        console.log('received:%s',data);
    })

    ws.send('something')
})

服务启动后控制台输出:

node搭建本地https和wss服务(SSL证书安全),websocket,https,前端

 测试:服务器连接

浏览器输入:https:xxxxx:端口 访问成功 

node搭建本地https和wss服务(SSL证书安全),websocket,https,前端

 测试wss   

可以在这个网站websocket/ws/wss在线调试测试工具

node搭建本地https和wss服务(SSL证书安全),websocket,https,前端

发送消息 看服务端 

node搭建本地https和wss服务(SSL证书安全),websocket,https,前端

参考:node搭建本地https和wss服务(SSL证书安全)_node ssl_jixhua的博客-CSDN博客

Node.js网络编程之WebSocket篇_node websocket_夜已如歌_ok的博客-CSDN博客文章来源地址https://www.toymoban.com/news/detail-540213.html

到了这里,关于node搭建本地https和wss服务(SSL证书安全)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 理解HTTPS/TLS/SSL(一)基础概念+配置本地自签名证书

    对于HTTPS、TLS、SSL相关的概念,平时也是时常接触到。看过几篇文章之后,总以为自己真正了解了,实际上并没有,准备补充一下这一部分的基础知识,对于更深层次的东西,例如各种标准的解读,则不打算深入。 我们都知道HTTP是不安全的,以及为什么不安全。但是为了更直

    2024年02月11日
    浏览(42)
  • nginx: 配置https证书,wss证书

    作用:SSL证书卸载 openssl genrsa -des3 -out server.key 2048 openssl req -new -key server.key -out server.csr openssl rsa -in server.key -out server.key openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt 放在指定目录,比如 /usr/local/cert TODO 其他证书制作方式 nginx.conf文件,注意proxy_pass后面的斜杠

    2024年02月04日
    浏览(27)
  • SpringBoot配置SSL证书,开启HTTPS安全访问!!!

    一、前言 二、SpringBoot中配置SSL 1、环境 2、客户端单向认证服务端代码实战-PFX格式的证书 3、HTTP 转HTTPS 通过HTTP协议传输数据,并不会对数据进行加密,所以存在着一定的风险,容易被抓包破解数据,而且现在各种浏览器对使用HTTP协议的网站也会提示不安全。通过将HTTP协议

    2024年02月11日
    浏览(39)
  • Nginx配置ssl证书实现https安全访问

    目录 一、Nginx的安装与配置 安装步骤 二、SSL证书获取 三、Nginx配置 前题条件,拥有服务器与可以解析到该服务器的自己的域名。 若已安装好了Nginx,则需查看自己的Nginx是否开启了SSL的模块功能:  显示如上,则代表ssl功能已开启,否则可能出现以下错误提示: nginx: [emer

    2024年02月15日
    浏览(29)
  • Spring Boot | 使用mkcert本地生成SSL证书配置后端接口为HTTPS协议

    Tips:本篇博客是 Windows 版本的使用教程,cmd 中执行的命令前缀是下载的软件名称,需要改成自己下载软件的名称! 首先去 GitHub 仓库中下载软件,下载完成后将文件保存在英文路径下的文件夹,之后以管理员权限运行 cmd 窗口,跳转至软件路径下。 在 cmd 窗口中执行以下命令

    2024年02月12日
    浏览(34)
  • 什么是HTTPS加密协议?HTTPS安全传输原理,SSL和TLS介绍,NGINX如何配置SSL证书

    HTTPS是超文本传输协议(HTTP)的安全版本。它使用SSL(安全套接层)或TLS(传输层安全)加密协议来保护数据传输的安全性和机密性,以防止未经授权的访问和窃听。HTTPS协议通常用于处理敏感信息,如在线支付或登录凭证等。可以通过URL的前缀来识别一个网站是否使用了H

    2024年02月03日
    浏览(38)
  • 【网络安全】https与证书原理 | SSL Pinning及其绕过

    参考: https://segmentfault.com/a/1190000009002353?sort=newest https://zhuanlan.zhihu.com/p/353571366 https://juejin.cn/post/6863295544828444686 HTTPS=HTTP+TLS,其它的协议也类似,如FTPS=FTP+TLS 1) ClientHello Client 首先发送本地的 TLS 版本、支持的加密算法套件,并且生成一个随机数 R1 。 2)Server Hello Server 端确

    2024年02月05日
    浏览(34)
  • Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker

    没有docker需提前安装docker,不知怎么安装的请自行百度。 1、拉取镜像 2、去阿里云或者其他云服务提供商申请免费证书,申请到之后下载下来,上传到服务器 把证书上传到ssl目录下面,下面是ssl的目录结构 /root/nginx/ssl 和上传的证书有两个文件一个 .key 一个 .pem 进入nginx-pr

    2024年02月09日
    浏览(82)
  • Docker安装emqx详解(配置SSL证书、开启WSS、鉴权)

    EMQX 是一款大规模可弹性伸缩的云原生分布式物联网 MQTT 消息服务器。 1 端口介绍 1883:MQTT 协议端口 8084:MQTT/SSL 端口 8083:MQTT/WebSocket 端口 8080:HTTP API 端口 18083:Dashboard 管理控制台端口 2 拉取镜像 3 启动临时容器 其他小知识 选项 选项简写 说明 –detach -d 在后台运行容器,

    2023年04月16日
    浏览(36)
  • 【Android安全】安装mitmproxy Https抓包证书 | 安卓SSL抓包

    macbook上 mitmproxy 抓取安卓手机https流量 重点是安装mitmproxy Https抓包证书 手机需要root,macbook上需要安装好mitmproxy 需要完成下文1-3: https://github.com/doug-leith/cydia (接入有线网并开启无线热点) 启用 IP 转发: sudo sysctl -w net.inet.ip.forwarding=1 保存文件: https://github.com/doug-leith/cy

    2024年01月22日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包