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打包工具整合到鼠标右键的方法
May 11 NodeJs
跟我学Nodejs(一)--- Node.js简介及安装开发环境
May 20 NodeJs
Jquery通过ajax请求NodeJS返回json数据实例
Nov 08 NodeJs
实例分析nodejs模块xml2js解析xml过程中遇到的坑
Mar 18 NodeJs
深入理解Nodejs Global 模块
Jun 03 NodeJs
浅谈nodejs中的类定义和继承的套路
Jul 26 NodeJs
nodejs基于WS模块实现WebSocket聊天功能的方法
Jan 12 NodeJs
Nodejs处理异常操作示例
Dec 25 NodeJs
nodejs提示:cross-device link not permitted, rename错误的解决方法
Jun 10 NodeJs
NodeJS有难度的面试题(能答对几个)
Oct 09 NodeJs
Nodejs环境实现socket通信过程解析
Jul 03 NodeJs
如何利用nodejs自动定时发送邮件提醒(超实用)
Dec 01 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中看实例学正则表达式
2006/12/25 PHP
php上的memcache和memcached两个pecl库
2010/03/29 PHP
php和数据库结合的一个简单的web实例 代码分析 (php初学者)
2011/07/28 PHP
浅析使用Turck-mmcache编译来加速、优化PHP代码
2013/06/20 PHP
php 使用file_get_contents读取大文件的方法
2014/11/13 PHP
php字符串按照单词进行反转的方法
2015/03/14 PHP
php读取文件内容到数组的方法
2015/03/16 PHP
php 生成Tab键或逗号分隔的CSV
2016/09/24 PHP
php微信开发之百度天气预报
2016/11/18 PHP
PHP html_entity_decode()函数讲解
2019/02/25 PHP
PHP使用递归按层级查找数据的方法
2019/11/10 PHP
JQuery的$和其它JS发生冲突的快速解决方法
2014/01/24 Javascript
Javascript中3个需要注意的运算符
2015/04/02 Javascript
bootstrap时间控件daterangepicker使用方法及各种小bug修复
2017/10/25 Javascript
JS+WCF实现进度条实时监测数据加载量的方法详解
2017/12/19 Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
2018/11/12 jQuery
详解vue.js移动端配置flexible.js及注意事项
2019/04/10 Javascript
详解elementui之el-image-viewer(图片查看器)
2019/08/30 Javascript
vue.config.js常用配置详解
2019/11/14 Javascript
jquery实现拖拽小方块效果
2020/12/10 jQuery
python实现连接mongodb的方法
2015/05/08 Python
使用Selenium破解新浪微博的四宫格验证码
2018/10/19 Python
Python绘制并保存指定大小图像的方法
2019/01/10 Python
python中dict使用方法详解
2019/07/17 Python
Python爬虫爬取煎蛋网图片代码实例
2019/12/16 Python
flask框架渲染Jinja模板与传入模板变量操作详解
2020/01/25 Python
python numpy库np.percentile用法说明
2020/06/08 Python
使用CSS3实现字体颜色渐变的实现
2020/08/10 HTML / CSS
本科生求职简历的自我评价
2013/10/21 职场文书
创业计划书六个要素
2013/12/26 职场文书
资助贫困学生倡议书
2014/05/16 职场文书
书法社团活动总结
2015/05/07 职场文书
职工培训工作总结
2015/08/10 职场文书
2016年区委书记抓基层党建工作公开承诺书
2016/03/25 职场文书
公司年会晚会开幕词
2019/04/02 职场文书
Django 如何实现文件上传下载
2021/04/08 Python