1. 程式人生 > >用WS模組建立加密的WSS服務

用WS模組建立加密的WSS服務

node的ws模組可以很方便地建立一個單純的標準websocket服務,但是對於建立wss服務並沒有提供一個獨立的方法,還是使用建立ws服務的方法,在傳入引數物件里加了個自定義的https服務。
 
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(25550);
 
 
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 );
    });
});
wss創建出來,其餘的操作和普通的ws服務都是完全一樣的

相關推薦

WS模組建立加密WSS服務

node的ws模組可以很方便地建立一個單純的標準websocket服務,但是對於建立wss服務並沒有提供一個獨立的方法,還是使用建立ws服務的方法,在傳入引數物件里加了個自定義的https服務。   var https=require('https'); var ws=re

node.js中ws模組建立服務端和客戶端,網頁客戶端

1.node.js中ws模組建立服務端// 載入node上websocket模組 ws; var ws = require("ws"); // 啟動基於websocket的伺服器,監聽我們的客戶端接入

multiprocessing模組建立程序, 建立自定以程序 ,和程序池技術

olmultiprocessing 模組建立程序     1.需要將要執行的事情封裝為函式     2.使用moltiprocessing模組中Process類建立程序物件     3.通過物件屬性設定和Process的初始化函式對程序進行設定,繫結要執行的函式   

[轉]【NODE】WS模塊創建加密WS服務(WSS)

setting sublime websocket lis pop 函數 server nim data- 【From】 https://luojia.me/2015/07/21/%E3%80%90node%E3%80%91%E7%94%A8ws%E6%A8%A1%E5%9

vs 2017建立 windows 服務

建立專案   建立專案,在Windows下選擇Windows服務(.NET Framework)。建立名稱為indowsService_Test,如下圖。        系統預設建立Service1.cs。  開啟Seri

docker 安裝 建立支援ssh服務的映象 建立nginx服務的映象 dockerfile製作nginx映象

環境centos7.2  docker安裝核心版本必須在3.10及其以上uname -r  檢視核心版本首先去docker官網downloaddocker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm docker-ce-selinux-17.0

intellijmaven來建立模組專案

Maven 與 IntelliJ IDEA 的完美結合  可以先看看這個帖子,用intellij來maven構建多模組工程還是有很多好處的。 IntelliJ IDEA借鑑的Maven的概念,不在採取Eclipse裡Project的概念,一切都是Module。無論是

Windows下Python 3.4+自帶的venv模組建立虛擬環境

Python 3.4+自帶了venv模組,用於建立虛擬環境,每個虛擬環境都可以安裝一套獨立的第三方模組。 本文在Windows 10上操作。  原文:http://www.cnblogs.com/animalize/p/5868763.html 1、建立一個虛擬環境: D:\>mkdir test_

macssh連接linux雲服務器中文亂碼或無法顯示解決

logs ubuntu ubunt span text 字符 html charset osx 問題1:服務器是ubuntu16.04,用mac自帶的ssh連接後無法正常輸入中文? 解:這種情況一般是終端和服務器的字符集不匹配,MacOSX下默認的是utf8字符集。 打開編

linux下scp命令在兩個服務器之間傳輸文件,利用php_scp函數進行文件傳輸

evc 在操作 path send 返回值 遠程 false cal 上傳 在linux下利用scp進行文件傳輸, 從服務器下載文件 scp [email protected]/* */:/path/filename /path/filename 上傳

關於兩個網址訪問一個服務器上不同站點

com dex 監聽 listen 解決方法 rtu one 不同 mage 要求就是通過http://www.xiaolu.com訪問在位置f:myblog下的文件index.html;通過http://www.xiaolu1.com訪問在位置f:myblog1下的in

nodeJs建立簡單的服務

ava 服務器 回調 clas light 端口 log 本地 var var http = require(‘http‘);//http依賴 var hostname = ‘127.0.0.1‘;//本地 var port = 3000;//端口 var serve

Javascript端加密java服務端解密

大致 ram con pack ioe row read let 不用 通常我們會通過htts來保證傳輸安全,但如果我們不用https,如何通過javascript來保證瀏覽器端發送的參數進行加密,並且通過RSA算法來處理。 這裏我們可以利用jquery的一個加密插件j

使用C#創建及調WCF完整實例 (Windows服務宿主)

targe fse 切換 目的 water fcm config文件 mark art 關於WCF的概念、原理、優缺點等,在這裏就不多說了,網上很多,可以自行搜索,比我解釋的要專業的多。 這裏直接說使用Windows 服務(Windows Service)作為宿主如何實現

Hyper-V 2016 系列教程11 太倉民政局 微軟 Hyper-V 虛擬化解決方案介紹 采的是華為系列服務

microsoft hyper-v 虛擬化 分享一個小型的Hyper-V 虛擬化解決方案介紹 采用的是華為系列服務器軟件清單簡介:Windows Server 2012 客戶可以利用Windows Server 2012 Hyper-V的虛擬化技術來降低成本以獲利。傳統的多個服務器角色可

關於AJAX跨域調ASP.NET MVC或者WebAPI服務的問題及解決方案

-h protocol silver 我們 rem 做了 mode edm run 問題描述 當跨域(cross domain)調用ASP.NET MVC或者ASP.NET Web API編寫的服務時,會發生無法訪問的情況。 重現方式

dockerfile源碼包搭建nginx服務

甘兵 雲計算 docker dockerfile nginx dockerfile 一、Dockerfile內容如下FROM centos:latestMAINTAINER [email protected] TIME_ZONE Asia/ShanghaiCOPY ./nginx-1

Java實現AES加密(轉)

密鑰 工具 mex 嚴格 keys 生產 ner for 創建 一)什麽是AES? 高級加密標準(英語:Advanced Encryption Standard,縮寫:AES),是一種區塊加密標準。這個標準用來替代原先的DES,已經被多方分析且廣為全世界所使用。 那麽為什麽

dockerfile源碼包構建tomcat服務

docker dockerfile tomcat 甘兵 一、說明centos基於docker官方鏡像來制作的,用tomcat源碼包生成的鏡像,本環境中tomcat安裝目錄位於:/usr/local/,jdk安裝目錄位於:/usr/,如果你使用dockerfile buid此鏡像,你要提前下載好

commit方式構建具有sshd服務的centos鏡像

docker sshd1.從遠程倉庫中pull centos鏡像docker pull centos2.查詢鏡像docker images[root@HA2 kehj]# docker imagesREPOSITORY TAG IMAGE ID