node.js中使用socket.io制作命名空间


Posted in Javascript onDecember 15, 2014

如果开发者想在一个特定的应用程序中完全控制消息与事件的发送,只需要使用一个默认的"/"命名空间就足够了.但是如果开发者需要将应用程序作为第三方服务提供给其他应用程序,则需要为一个用于与客户端连接的socket端口定义一个独立的命名空间.

io.of(namespace)

制作两个命名空间

chat和news然后在客户端相互发送信息.

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 chart=io.of("/chat").on("connection", function (socket) {

    socket.send("欢迎访问chat空间!");

    socket.on("message", function (msg) {

        console.log("chat命名空间接收到信息:"+msg);

    });

});

var news=io.of("/news").on("connection", function (socket) {

    socket.emit("send message","欢迎访问news空间!");

    socket.on("send message", function (data) {

       console.log("news命名空间接受到send message事件,数据为:"+data);

    });

});
<!DOCTYPE html>

<html>

<head lang="en">

    <meta charset="UTF-8">

    <title></title>

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

    <script>

        var chat=io.connect("http://localhost/chat"),

            news=io.connect("http://localhost/news");

        chat.on("connect", function () {

            chat.send("你好.");

            chat.on("message", function (msg) {

                console.log("从char空间接收到消息:"+msg);

            });

        });

        news.on("connect", function () {

            news.emit("send message","hello");

            news.on("send message", function (data) {

                console.log("从news命名空间接收到send message事件,数据位:"+data);

            });

        });

    </script>

</head>

<body>

</body>

</html>

运行结果:

node.js中使用socket.io制作命名空间

小伙伴们是否了解了在node.js中使用socket.io制作命名空间的方法了呢,这里的2个例子很简单,童鞋们自由发挥下。

Javascript 相关文章推荐
一端时间轮换的广告
Jun 26 Javascript
FireFox中textNode分片的问题
Apr 10 Javascript
extjs 的权限问题 要求控制的对象是 菜单,按钮,URL
Mar 09 Javascript
JS 数字转换研究总结
Dec 26 Javascript
js获取当前日期前七天的方法
Feb 28 Javascript
理解javascript中的with关键字
Feb 15 Javascript
javascript HTML5 Canvas实现圆盘抽奖功能
Apr 11 Javascript
HTML5 实现的一个俄罗斯方块实例代码
Sep 19 Javascript
js实现开启密码大写提示
Dec 21 Javascript
关于iframe跨域POST提交的方法示例
Jan 15 Javascript
Vue组件为什么data必须是一个函数
Jun 11 Javascript
mapboxgl区划标签避让不遮盖实现的代码详解
Jul 01 Javascript
node.js中的fs.fstatSync方法使用说明
Dec 15 #Javascript
node.js中的fs.fstat方法使用说明
Dec 15 #Javascript
node.js中的fs.readFileSync方法使用说明
Dec 15 #Javascript
node.js中的fs.readFile方法使用说明
Dec 15 #Javascript
node.js中的fs.linkSync方法使用说明
Dec 15 #Javascript
node.js中的socket.io的广播消息
Dec 15 #Javascript
超级简单的jquery操作表格方法
Dec 15 #Javascript
You might like
详解PHP使用日期时间处理器Carbon人性化显示时间
2017/08/10 PHP
thinkPHP框架实现的短信接口验证码功能示例
2018/06/20 PHP
HTML中事件触发列表与解说
2007/07/09 Javascript
判断iframe是否加载完成的完美方法
2010/01/07 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
2014/12/18 Javascript
jquery Easyui快速开发总结
2015/08/20 Javascript
Bootstrap每天必学之按钮
2015/11/26 Javascript
使用Node.js处理前端代码文件的编码问题
2016/02/16 Javascript
BootStrap入门教程(一)之可视化布局
2016/09/19 Javascript
js格式化时间的简单实例
2016/11/27 Javascript
浅析jQuery操作select控件的取值和设值
2016/12/07 Javascript
vue2.0构建单页应用最佳实战
2017/04/01 Javascript
小程序多图列表实现性能优化的方法步骤
2019/05/28 Javascript
JavaScript Array.flat()函数用法解析
2020/09/02 Javascript
[03:57]2016完美“圣”典风云人物:rOtk专访
2016/12/09 DOTA
对于Python的Django框架使用的一些实用建议
2015/04/03 Python
分享一个简单的python读写文件脚本
2017/11/25 Python
详解tensorflow训练自己的数据集实现CNN图像分类
2018/02/07 Python
python使用生成器实现可迭代对象
2018/03/20 Python
PyCharm代码回滚,恢复历史版本的解决方法
2018/10/22 Python
Django单元测试中Fixtures的使用方法
2020/02/26 Python
Python的PIL库中getpixel方法的使用
2020/04/09 Python
深入理解Python 多线程
2020/06/16 Python
基于selenium及python实现下拉选项定位select
2020/07/22 Python
python使用建议技巧分享(三)
2020/08/18 Python
澳大利亚墨水站Ink Station:墨水和碳粉打印机墨盒
2019/03/24 全球购物
淘宝客服自我总结鉴定
2014/01/25 职场文书
个人授权委托书
2014/04/03 职场文书
倡议书作文
2015/01/19 职场文书
户外活动总结
2015/02/04 职场文书
呼兰河传读书笔记
2015/06/30 职场文书
2019年暑期安全广播稿!
2019/07/03 职场文书
python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析
2021/04/14 Python
Python实现排序方法常见的四种
2021/07/15 Python
python机器学习实现oneR算法(以鸢尾data为例)
2022/03/03 Python
SpringBoot项目部署到阿里云服务器的实现步骤
2022/06/28 Java/Android