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 相关文章推荐
使用js获取QueryString的方法小结
Feb 28 Javascript
document.getElementById介绍
Sep 13 Javascript
使用javascipt---实现二分查找法
Apr 10 Javascript
js动态添加表格数据使用insertRow和insertCell实现
May 22 Javascript
Jquery之Bind方法参数传递与接收的三种方法
Jun 24 Javascript
JS判断变量是否为空判断是否null
Jul 25 Javascript
遮罩层点击按钮弹出并且具有拖动和关闭效果(两种方法)
Aug 20 Javascript
第九章之路径分页标签与徽章组件
Apr 25 Javascript
AngularJS 入门教程之HTML DOM实例详解
Jul 28 Javascript
vue 中自定义指令改变data中的值
Jun 02 Javascript
JS 验证密码 不能为空,必须含有数字、字母、特殊字符,长度在8-12位
Jun 21 Javascript
webpack 静态资源集中输出的方法示例
Nov 09 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 最大运行时间 max_execution_time修改方法
2010/03/08 PHP
php使用类继承解决代码重复的问题
2015/02/11 PHP
php强制用户转向www域名的方法
2015/06/19 PHP
php生成过去100年下拉列表的方法
2015/07/20 PHP
你需要知道的10个最佳javascript开发实践小结
2012/04/15 Javascript
基于jquery创建的一个图片、视频缓冲的效果样式插件
2012/08/28 Javascript
推荐40个简单的 jQuery 导航插件和教程(下篇)
2012/09/14 Javascript
extjs tabpanel限制选项卡数量实现思路及代码
2013/04/02 Javascript
JQueryiframe页面操作父页面中的元素与方法(实例讲解)
2013/11/19 Javascript
单元选择合并变色示例代码
2014/05/26 Javascript
一个简单的jQuery插件ajaxfileupload.js实现ajax上传文件例子
2014/06/26 Javascript
jQuery ajax调用WCF服务实例
2014/07/16 Javascript
js解决select下拉选不中问题
2014/10/14 Javascript
AngularJS基础 ng-srcset 指令简单示例
2016/08/03 Javascript
JavaScript中自带的 reduce()方法使用示例详解
2016/08/10 Javascript
JavaScript数据结构之优先队列与循环队列实例详解
2017/10/27 Javascript
微信小程序实现图片压缩功能
2018/01/26 Javascript
Node.js API详解之 timer模块用法实例分析
2020/05/07 Javascript
Vue+Element ui 根据后台返回数据设置动态表头操作
2020/09/21 Javascript
[00:57]辉夜杯战队访谈宣传片—VG
2015/12/25 DOTA
Python学习笔记(一)(基础入门之环境搭建)
2014/06/05 Python
Python实现快速多线程ping的方法
2015/07/15 Python
深入理解python中的浅拷贝和深拷贝
2016/05/30 Python
python中类和实例如何绑定属性与方法示例详解
2017/08/18 Python
Python3 requests模块如何模仿浏览器及代理
2020/06/15 Python
以色列的身体护理及家居香薰品牌:Sabon NYC
2018/02/23 全球购物
英国女性时尚鞋类的潮流制造者:Koi Footwear
2018/10/19 全球购物
JAKO-O德国野酷台湾站:德国首屈一指的婴幼童用品品牌
2019/01/14 全球购物
药学专业个人的自我评价
2013/12/31 职场文书
安全环保标语
2014/06/09 职场文书
房屋租房协议书范本
2014/12/04 职场文书
幼儿学前班评语
2014/12/29 职场文书
文体活动总结
2015/02/04 职场文书
七一活动主持词
2015/06/29 职场文书
2016年10月份红领巾广播稿
2015/12/21 职场文书
Python djanjo之csrf防跨站攻击实验过程
2021/05/14 Python