WebSocket 通讯(node.js)
来源:互联网 发布:笔记本mac地址修改 编辑:程序博客网 时间:2024/06/05 06:07
个人原创,欢迎转载,转载请注明出处http://blog.csdn.net/bud_icelf QQ:909648986
WebSocket 通讯(node.js)
什么是WebSocket
WebSocket 规范的目标是在浏览器中实现和服务器端双向通信。
例子1 WebSocket 实现 html5 与 Node.js双向通信
客户端代码
<!DOCTYPE html><html><head><meta charset="gbk"></head><body>state:<b id="state"></b></br>info:<b id="info">empty</b><script>var socket = new WebSocket("ws://localhost:8002");socket.onopen=function(event){document.getElementById("state").innerHTML="connected";socket.send("this is a test.");}socket.onmessage=function(message){document.getElementById("info").innerHTML=message.data;};socket.onclose=function(event){ document.getElementById("state").innerHTML="disconnected";}; socket.onerror=function(event){ document.getElementById("state").innerHTML="error";}; </script></body></html>
var socket = new WebSocket("ws://localhost:8002");
创建WebSocket对象,参数一为链接的地址
socket.onopen, socket.onmessage, socket.onclose, socket.onerror
分别是对 Socket打开, 信息传入, Socket关闭, Socket出错 的监听
socket.send("this is a test.");
当Socket打开后,向服务器端发送信息,参数一为信息的内容.
服务器端代码,node.js的安装请参考 Node.js 简介与安装
var ws=require(__dirname+"/lib/ws/server");var server=ws.createServer();server.addListener("connection",function(conn){console.log(conn.id+" connected.");server.broadcast("Welcome "+conn.id);conn.addListener("message",function(message){console.log("get message from connection "+conn.id+":"+message);});});server.addListener("disconnect",function(conn){console.log(conn.id+" closed.");});server.addListener("error",function(){console.log("error.");});server.listen(8002);
访问http://github.com/miksago/node-websocket-server 点击Downloads下载ZIP文件
复制 node-websocket-server 包整个lib文件夹到当前文件所在位置
var ws=require(__dirname+"/lib/ws/server");
引用server模块,__dirname是当前文件的路径
var server=ws.createServer();
创建服务器
server.addListener("connection",function(conn){
});
conn.addListener("message",function(message){
});
});
server.addListener("disconnect",function(conn){
}
server.addListener("error",function(conn){
});
分别是 连接时,信息传入时,断开连接时,出错时 的事件处理
console.log(conn.id+" connected.");
在控制台输出信息.参数一为信息的内容
server.broadcast("Welcome "+conn.id);
向所有连接中的客户端广播信息,.参数一为信息的内容.
server.listen(8002);
监听8002端口
效果显示
打开服务器端
打开客户端
- WebSocket 通讯(node.js)
- WebSocket+Node.js 通讯及在 iPhone中 实现
- [转载]WebSocket+Node.js 通讯及在 iPhone中 实现
- WebSocket和node.js
- Node.js和websocket
- WebSocket 一场Web 通讯革命悄然来临——Node.js摸石头系列之五
- websocket和node.js使开
- node.js与websocket入门
- node.js与websocket入门
- 集成node.js中的websocket
- Node.js 长连接(WebSocket)
- websocket node.js 小实例
- node.js express使用websocket
- java js实现Websocket通讯实例
- websocket与node.js的完美结合
- 基于Node.js服务器的WebSocket Video
- Node.js websocket 聊天室 相关资料
- 马年学习Nginx/Node.js/websocket
- 移植最新的内核之:修改分区和制作根文件系统
- 再探跳马问题(骑士周游问题)
- 英飞凌
- kendoui - 片段
- linux fuser 程序简介
- WebSocket 通讯(node.js)
- Windows 图形界面演化
- vlc的应用之二:vlc的ActiveX及cab
- linux系统下oracle数据库备份、还原。
- mysql悲观锁总结和实践
- python_知识点补充
- 道路运输车辆卫星定位系统
- 第九周--项目2-Time类
- hdu 1172