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数据库示例
Dec 20 NodeJs
nodejs实现遍历文件夹并统计文件大小
May 28 NodeJs
Nodejs Stream 数据流使用手册
Apr 17 NodeJs
详解Nodejs之静态资源处理
Jun 05 NodeJs
ajax +NodeJS 实现图片上传实例
Jun 06 NodeJs
NodeJS自定义模块写法(详解)
Jun 27 NodeJs
nodejs中art-template模板语法的引入及冲突解决方案
Nov 07 NodeJs
nodejs使用express获取get和post传值及session验证的方法
Nov 09 NodeJs
NodeJs form-data格式传输文件的方法
Dec 13 NodeJs
基于nodejs的雪碧图制作工具的示例代码
Nov 05 NodeJs
nodejs文件夹深层复制功能
Sep 03 NodeJs
nodejs dgram模块广播+组播的实现示例
Nov 04 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
很让人受教的 提高php代码质量36计
2012/09/05 PHP
PHP.vs.JAVA
2016/04/29 PHP
微信公众平台DEMO(PHP)
2016/05/04 PHP
IIS 7.5 asp Session超时时间设置方法
2017/04/17 PHP
laravel框架与其他框架的详细对比
2019/10/23 PHP
借助script进行Http跨域请求:JSONP实现原理及代码
2013/03/19 Javascript
js特效,页面下雪的小例子
2013/06/17 Javascript
javascript设计简单的秒表计时器
2020/09/05 Javascript
Javascript基于AJAX回调函数传递参数实例分析
2015/12/15 Javascript
基于jQuery实现点击弹出层实例代码
2016/01/01 Javascript
BootStrap Progressbar 实现大文件上传的进度条的实例代码
2016/06/27 Javascript
bootstrap datepicker 与bootstrapValidator同时使用时选择日期后无法正常触发校验的解决思路
2016/09/28 Javascript
jQuery使用EasyUi实现三级联动下拉框效果
2017/03/08 Javascript
jQuery UI Grid 模态框中的表格实例代码
2017/04/01 jQuery
Angular2自定义分页组件
2017/04/19 Javascript
jquery+css实现侧边导航栏效果
2017/06/12 jQuery
基于mpvue的小程序项目搭建的步骤
2018/05/22 Javascript
vue element table 表格请求后台排序的方法
2018/09/28 Javascript
jquery使用FormData实现异步上传文件
2018/10/25 jQuery
浅谈tensorflow1.0 池化层(pooling)和全连接层(dense)
2018/04/27 Python
python:print格式化输出到文件的实例
2018/05/14 Python
Tensorflow 实现修改张量特定元素的值方法
2018/07/30 Python
python 实现图片旋转 上下左右 180度旋转的示例
2019/01/24 Python
Pandas中resample方法详解
2019/07/02 Python
scikit-learn线性回归,多元回归,多项式回归的实现
2019/08/29 Python
基于python实现地址和经纬度转换
2020/05/19 Python
python如何从键盘获取输入实例
2020/06/18 Python
中国综合性网上购物商城:当当(网上卖书起家)
2016/11/16 全球购物
创建服务型党组织实施方案
2014/02/25 职场文书
《骆驼和羊》教学反思
2014/02/27 职场文书
教学评估实施方案
2014/03/16 职场文书
弘扬焦裕禄精神走群众路线思想汇报
2014/09/12 职场文书
高中校园广播稿3篇
2014/09/29 职场文书
2014年作风建设剖析材料
2014/10/23 职场文书
小学教师师德师风自我评价
2015/03/04 职场文书
SQL Server数据定义——模式与基本表操作
2021/04/05 SQL Server