安装 npm install websocket --save
服务器端:
// 导入websocket模块
var websocket = require('websocket');
var http = require('http');
var fs = require('fs')
// 创建普通的httpserver
var server = http.createServer(function(req,res){
fs.createReadStream('./index.html').pipe(res)
})
// 普通http.server监听
server.listen(9988);
// 创建websocket server,
var wsServer = new websocket.server({
'httpServer':server // 需要传递普通http server 对象
})
// 监听request事件,并非http server的request请求
wsServer.on('request',function(req){
// 同步阻塞,接收连接
var conn = req.accept('node-ws');
conn.send('嗯你好')
conn.on('message',function(data){
console.log(data.utf8Data)
})
})
浏览器端:
<script>
// 创建到本机9988端口的websocket连接
var ws = new WebSocket('ws://127.0.0.1:9988','node-ws');
ws.onopen = function(){
ws.send('hello server,i am a client...');
}
ws.onmessage=function(msg){
console.log(msg.data)
}
</script>
浏览器端需要使用浏览器版本的支持。