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下打包模块archiver详解
Dec 03 NodeJs
nodejs 整合kindEditor实现图片上传
Feb 03 NodeJs
Nodejs express框架一个工程中同时使用ejs模版和jade模版
Dec 28 NodeJs
Nodejs进阶:核心模块net入门学习与实例讲解
Nov 21 NodeJs
nodejs+websocket实时聊天系统改进版
May 18 NodeJs
Nodejs中Express 常用中间件 body-parser 实现解析
May 22 NodeJs
nodejs中sleep功能实现暂停几秒的方法
Jul 12 NodeJs
关于Mac下安装nodejs、npm和cnpm的教程
Apr 11 NodeJs
nodejs中函数的调用实例详解
Oct 31 NodeJs
nodejs语言实现验证码生成功能的示例代码
Oct 13 NodeJs
基于NodeJS开发钉钉回调接口实现AES-CBC加解密
Aug 20 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中的多态性[译]
2011/08/02 PHP
php json_encode()函数返回json数据实例代码
2014/10/10 PHP
mysql_connect localhost和127.0.0.1的区别(网络层阐述)
2015/03/26 PHP
ThinkPHP实现更新数据实例详解(demo)
2016/06/29 PHP
thinkphp分页实现效果
2016/10/13 PHP
AES加解密在php接口请求过程中的应用示例
2016/10/26 PHP
Yii2框架中日志的使用方法分析
2017/05/22 PHP
php原生数据库分页的代码实例
2019/02/18 PHP
深入理解PHP+Mysql分布式事务与解决方案
2020/12/03 PHP
ext checkboxgroup 回填数据解决
2009/08/21 Javascript
jquery dialog open后,服务器端控件失效的快速解决方法
2013/12/19 Javascript
简单实现轮播图效果的实例
2016/07/15 Javascript
解析JavaScript实现DDoS攻击原理与保护措施
2016/12/26 Javascript
详解create-react-app 自定义 eslint 配置
2018/06/07 Javascript
ES6 Object方法扩展的应用实例分析
2019/06/25 Javascript
微信小程序tabBar 返回tabBar不刷新页面
2019/07/25 Javascript
jQuery zTree插件快速实现目录树
2019/08/16 jQuery
基于layui的下拉列表的数据回显方法
2019/09/24 Javascript
Python xlwt设置excel单元格字体及格式
2020/04/18 Python
python列表的增删改查实例代码
2018/01/30 Python
django从请求到响应的过程深入讲解
2018/08/01 Python
centos 安装Python3 及对应的pip教程详解
2019/06/28 Python
python基于socket实现的UDP及TCP通讯功能示例
2019/11/01 Python
关于Python-faker的函数效果一览
2019/11/28 Python
python爬虫中的url下载器用法详解
2020/11/30 Python
HTML5 Canvas的常用线条属性值总结
2016/03/17 HTML / CSS
阿迪达斯意大利在线商店:adidas意大利
2016/09/19 全球购物
美国百年历史早餐食品供应商:Wolferman’s
2017/01/18 全球购物
自主招生推荐信怎么写
2015/03/26 职场文书
干部培训工作总结2015
2015/05/25 职场文书
诚信考试主题班会
2015/08/17 职场文书
2016七一建党节慰问信
2015/11/30 职场文书
通知怎么写?
2019/04/17 职场文书
未来,这5大方向都很适合创业
2019/07/22 职场文书
Nginx 502 Bad Gateway错误原因及解决方案
2021/03/31 Servers
win11无线投屏在哪设置? win11无线投屏功能的使用方法
2022/04/08 数码科技