node.js中的socket.io的广播消息


Posted in Javascript onDecember 15, 2014

在多个客户端与服务器端建立连接后,socket.io()服务器具有一个sockets属性,属性值为所有与客户端建立连接的socket对象.可以利用该对象的send方法或emit方法向所有客户端广播消息.

io.sockets.send("user commected);

io.socket.emit("login",names);

案例

server.js代码:

var express=require("express");

var http=require("http");

var sio=require("socket.io");

var app=express();

var server=http.createServer(app);

app.get("/", function (req,res) {

    res.sendfile(__dirname+"/index.html");

});

server.listen(1337,"127.0.0.1", function () {

    console.log("开始监听1337");

});

var io=sio.listen(server);

 var names=[];

io.sockets.on("connection", function (socket) {

    socket.emit("login",names);

    socket.on("login", function (name) {

        names.push(name);

        io.sockets.emit("login",names);

    });

});
<!DOCTYPE html>

<html>

<head lang="en">

    <meta charset="UTF-8">

    <title></title>

    <script src="/socket.io/socket.io.js"></script>

    <script>

        var socket=io.connect();

        socket.on("login", function (names) {

            var str="";

            names.forEach(function(name){

                str+="用户"+name+"已登录.<br/>";

            });

            document.getElementById("result").innerHTML=str;

        });

        function add(){

            socket.emit("login",document.getElementById("nickname").value);

        }

    </script>

</head>

<body>

昵称<input type="text" id="nickname" />

<div id="result"></div>

<input type="button" onclick="add()" value="登录" />

</body>

</html>

运行结果:

node.js中的socket.io的广播消息

在谷歌浏览器里面的登录,可以在火狐中看到一模一样的结果.

这是一个美妙的现象,也是一个让我万分惊喜的效果.

如此美妙的node.

Javascript 相关文章推荐
用jQuery实现检测浏览器及版本的脚本代码
Jan 22 Javascript
Extjs学习过程中新手容易碰到的低级错误积累
Feb 11 Javascript
jQueryUI写一个调整分类的拖放效果实现代码
May 10 Javascript
原生js实现跨浏览器获取鼠标按键的值
Apr 08 Javascript
jQuery图片轮播的具体实现
Sep 11 Javascript
手机端网页点击链接触发自动拨打或保存电话的示例代码
Aug 15 Javascript
详解JavaScript中Date.UTC()方法的使用
Jun 12 Javascript
jQuery解析Json实例详解
Nov 24 Javascript
vue.js之vue-cli脚手架的搭建详解
May 05 Javascript
细说webpack源码之compile流程-入口函数run
Dec 26 Javascript
微信小程序图片左右摆动效果详解
Jul 13 Javascript
vue项目中企业微信使用js-sdk时config和agentConfig配置方式详解
Dec 15 Vue.js
超级简单的jquery操作表格方法
Dec 15 #Javascript
node.js中的fs.link方法使用说明
Dec 15 #Javascript
node.js中的fs.symlinkSync方法使用说明
Dec 15 #Javascript
jQuery中的编程范式详解
Dec 15 #Javascript
node.js中的fs.symlink方法使用说明
Dec 15 #Javascript
node.js中的fs.utimesSync方法使用说明
Dec 15 #Javascript
node.js中的fs.utimes方法使用说明
Dec 15 #Javascript
You might like
PHP中获取文件扩展名的N种方法小结
2012/02/27 PHP
yii2.0之GridView自定义按钮和链接用法
2014/12/15 PHP
浅谈PHP中的面向对象OOP中的魔术方法
2017/06/12 PHP
基于jQuery制作迷你背词汇工具
2010/07/27 Javascript
修改jQuery Validation里默认的验证方法
2012/02/14 Javascript
jQuery的bind()方法使用详解
2015/07/15 Javascript
jQuery代码性能优化的10种方法
2016/06/21 Javascript
微信小程序教程之本地图片上传(leancloud)实例详解
2016/11/16 Javascript
SelecT下拉框选中和取值的解决方法
2016/11/22 Javascript
浅谈在koa2中实现页面渲染的全局数据
2017/10/09 Javascript
jQuery动态移除与增加onclick属性的方法详解
2018/06/07 jQuery
微信网页授权并获取用户信息的方法
2018/07/30 Javascript
在vue 中使用 less的教程详解
2018/09/26 Javascript
Vue列表渲染的示例代码
2018/11/01 Javascript
浅谈对于react-thunk中间件的简单理解
2019/05/01 Javascript
js实现带搜索功能的下拉框
2020/01/11 Javascript
详解Python字符串对象的实现
2015/12/24 Python
安装python3的时候就是输入python3死活没有反应的解决方法
2018/01/24 Python
python3操作微信itchat实现发送图片
2018/02/24 Python
在mac下查找python包存放路径site-packages的实现方法
2018/11/06 Python
pycharm new project变成灰色的解决方法
2019/06/27 Python
详解Python的爬虫框架 Scrapy
2020/08/03 Python
美国高档百货Nordstrom的折扣店:Nordstrom Rack
2017/11/13 全球购物
Eyeko美国:屡获殊荣的睫毛膏、眼线笔和眉妆
2018/07/05 全球购物
Napapijri西班牙在线商店:夹克、外套、运动衫等
2020/11/05 全球购物
如何客观的进行自我评价
2013/12/17 职场文书
公司部门司机岗位职责
2014/01/03 职场文书
家长给幼儿园的表扬信
2014/01/09 职场文书
企业出纳岗位职责
2014/03/12 职场文书
年终考核实施方案
2014/05/26 职场文书
2014年教师党员公开承诺书
2014/05/28 职场文书
高速铁道技术专业求职信
2014/08/09 职场文书
中学教师暑期培训方案
2014/08/27 职场文书
党的群众路线个人对照检查材料
2014/09/23 职场文书
警告通知
2015/04/25 职场文书
小学运动会入场口号
2015/12/24 职场文书