Nodejs搭建wss服务器教程


Posted in NodeJs onMay 24, 2017

本文为大家分享了Nodejs搭建wss服务器的教程,供大家参考,具体内容如下

首先使用OpenSSL创建自签名证书:

#生成私钥key文件
openssl genrsa 1024 > /path/to/private.pem
//
#通过私钥文件生成CSR证书签名
openssl req -new -key /path/to/private.pem -out csr.pem
//
#通过私钥文件和CSR证书签名生成证书文件
openssl x509 -req -days 365 -in csr.pem -signkey /path/to/private.pem -out /path/to/file.crt

使用ws模块创建wss服务器:

var https=require('https');
var ws=require('ws');
var fs=require('fs');
var keypath=process.cwd()+'/server.key';//我把秘钥文件放在运行命令的目录下测试
var certpath=process.cwd()+'/server.crt';//console.log(keypath);
//console.log(certpath);
 
var options = {
 key: fs.readFileSync(keypath),
 cert: fs.readFileSync(certpath),
 passphrase:'1234'//如果秘钥文件有密码的话,用这个属性设置密码
};
 
var server=https.createServer(options, function (req, res) {//要是单纯的https连接的话就会返回这个东西
 res.writeHead(403);//403即可
 res.end("This is a WebSockets server!\n");
}).listen(15449);
 
 
var wss = new ws.Server( { server: server } );//把创建好的https服务器丢进websocket的创建函数里,ws会用这个服务器来创建wss服务
//同样,如果丢进去的是个http服务的话那么创建出来的还是无加密的ws服务
wss.on( 'connection', function ( wsConnect ) {
 wsConnect.on( 'message', function ( message ) {
  console.log( message );
 });
});

客户端链接:

var ws = new WebSocket('wss://localhost:15449/', {
 protocolVersion: 8,
 origin: 'https://localhost:15449',
 rejectUnauthorized: false //重要,自签名证书只能这样设了。CA颁发的受信任证书就不需要了
});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
NodeJS与Mysql的交互示例代码
Aug 18 NodeJs
nodejs中转换URL字符串与查询字符串详解
Nov 26 NodeJs
nodejs socket实现的服务端和客户端功能示例
Jun 02 NodeJs
nodeJS实现路由功能实例代码
Jun 08 NodeJs
nodejs socket服务端和客户端简单通信功能
Sep 14 NodeJs
详解nodejs中express搭建权限管理系统
Sep 15 NodeJs
使用vs code开发Nodejs程序的使用方法
Sep 21 NodeJs
详解Nodejs内存治理
May 13 NodeJs
Nodejs Express 通过log4js写日志到Logstash(ELK)
Aug 30 NodeJs
关于NodeJS中的循环引用详解
Jul 23 NodeJs
通过实例了解Nodejs模块系统及require机制
Jul 16 NodeJs
浅谈Node的内存泄露问题
May 06 NodeJs
Nodejs中Express 常用中间件 body-parser 实现解析
May 22 #NodeJs
深入理解nodejs中Express的中间件
May 19 #NodeJs
nodejs批量下载图片的实现方法
May 19 #NodeJs
nodejs制作爬虫实现批量下载图片
May 19 #NodeJs
详解Windows下安装Nodejs步骤
May 18 #NodeJs
nodejs+websocket实时聊天系统改进版
May 18 #NodeJs
nodejs6下使用koa2框架实例
May 18 #NodeJs
You might like
第三节--定义一个类
2006/11/16 PHP
PHP6 先修班 JSON实例代码
2008/08/23 PHP
PHP 执行系统外部命令 system() exec() passthru()
2009/08/11 PHP
PHP调用Linux的命令行执行文件压缩命令
2013/01/27 PHP
基于php常用正则表达式的整理汇总
2013/06/08 PHP
PHP采集类snoopy详细介绍(snoopy使用教程)
2014/06/19 PHP
javascript脚本调试方法小结
2008/11/24 Javascript
JavaScript 动态将数字金额转化为中文大写金额
2009/05/14 Javascript
javascript下判断一个元素是否存在的代码
2010/03/05 Javascript
判断及设置浏览器全屏模式
2014/04/20 Javascript
CSS3,HTML5和jQuery搜索框集锦
2014/12/02 Javascript
在线引用最新jquery文件的实现方法
2016/08/26 Javascript
React Native中导航组件react-navigation跨tab路由处理详解
2017/10/31 Javascript
vue中使用echarts制作圆环图的实例代码
2018/07/27 Javascript
判断文字超过2行添加展开按钮,未超过则不显示,溢出部分显示省略号
2019/04/28 Javascript
浅谈JS中几种轻松处理'this'指向方式
2019/09/16 Javascript
JavaScript实现公告栏上下滚动效果
2020/03/13 Javascript
解决Vue router-link绑定事件不生效的问题
2020/07/22 Javascript
Python中的类学习笔记
2014/09/23 Python
跟老齐学Python之模块的加载
2014/10/24 Python
Python实现去除代码前行号的方法
2015/03/10 Python
理解Python中的With语句
2016/03/18 Python
Python快速排序算法实例分析
2017/11/29 Python
Python实现七彩蟒蛇绘制实例代码
2018/01/16 Python
详解Python并发编程之创建多线程的几种方法
2019/08/23 Python
Pytorch实验常用代码段汇总
2020/11/19 Python
JD Sports意大利:英国篮球和运动时尚的领导者
2017/10/29 全球购物
中科方德软件测试面试题
2016/04/21 面试题
企划专员岗位职责
2013/12/09 职场文书
写给学生的新学期寄语
2014/01/18 职场文书
投资意向书范本
2014/04/01 职场文书
2015年医院科室工作总结范文
2015/05/26 职场文书
小学语文新课改心得体会
2016/01/22 职场文书
SQL注入的实现以及防范示例详解
2021/06/02 MySQL
python中__slots__节约内存的具体做法
2021/07/04 Python
如何打开Win11系统注册表编辑器?Win11注册表编辑器打开修复方法
2022/04/05 数码科技