node.js中使用socket.io制作命名空间
2023-06-13 09:15:33 时间
如果开发者想在一个特定的应用程序中完全控制消息与事件的发送,只需要使用一个默认的"/"命名空间就足够了.但是如果开发者需要将应用程序作为第三方服务提供给其他应用程序,则需要为一个用于与客户端连接的socket端口定义一个独立的命名空间.
io.of(namespace)
制作两个命名空间
chat和news然后在客户端相互发送信息.
varexpress=require("express");
varhttp=require("http");
varsio=require("socket.io");
varapp=express();
varserver=http.createServer(app);
app.get("/",function(req,res){
res.sendfile(__dirname+"/index.html");
});
server.listen(1337,"127.0.0.1",function(){
console.log("开始监听1337");
});
vario=sio.listen(server);
varchart=io.of("/chat").on("connection",function(socket){
socket.send("欢迎访问chat空间!");
socket.on("message",function(msg){
console.log("chat命名空间接收到信息:"+msg);
});
});
varnews=io.of("/news").on("connection",function(socket){
socket.emit("sendmessage","欢迎访问news空间!");
socket.on("sendmessage",function(data){
console.log("news命名空间接受到sendmessage事件,数据为:"+data);
});
});
<!DOCTYPEhtml>
<html>
<headlang="en">
<metacharset="UTF-8">
<title></title>
<scriptsrc="/socket.io/socket.io.js"></script>
<script>
varchat=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("sendmessage","hello");
news.on("sendmessage",function(data){
console.log("从news命名空间接收到sendmessage事件,数据位:"+data);
});
});
</script>
</head>
<body>
</body>
</html>
运行结果:
小伙伴们是否了解了在node.js中使用socket.io制作命名空间的方法了呢,这里的2个例子很简单,童鞋们自由发挥下。
相关文章
- Node.js基础
- node.js(2)
- node.js异步请求大坑
- js读取本地json文件_jquery读取本地json文件
- JS字符串转换为JSON的四种方法
- 【JS 逆向百例】猿人学系列 web 比赛第二题:js 混淆 - 动态 cookie,详细剖析
- Linux安装Node.js
- 开源基于 Node.js 的高速视频制作库,轻量,灵活的短视频加工库
- Node.js 20 正式发布
- Node.js安装及环境配置之Windows篇详解编程语言
- JS动态引入js、CSS动态创建script/link/style标签详解编程语言
- 使用Node.js连接MySQL数据库(node-mysql)
- Node.js连接MySQL数据库实践(node连接mysql)
- Linux上部署Node实现更多功能(linux安装node)
- Linux环境下配置Node.js(linux配置node)
- 解除 Linux 上的 Node.js 安装(linux卸载node)
- 如何使用Node.js连接Oracle数据库(node连接oracle)
- 从 Node.js 分裂出 Io.js 事件看开源软件谁做主
- Node.js连接MSSQL数据库的操作指南(node 链接mssql)
- 使用Node.js实现对MSSQL数据库的连接(node连接 mssql)
- 使用Node操作MSSQL数据库(node使用mssql)
- 使用Node.js链接/操作MS SQL数据库(node mssql使用)
- 统一接口:为FireFox添加IE的方法和属性的js代码
- 把JS与CSS写在同一个文件里的书写方法
- JS替换字符串中字符即替换全部而不是第一个
- node.js中的fs.readdirSync方法使用说明
- 基于socket.io和node.js搭建即时通信系统
- Node.js安装教程和NPM包管理器使用详解