如何在node的express中使用socket.io


Posted in Javascript onDecember 15, 2014

服务器端server.js代码

 var express=require("express");

 var http=require("http");

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

 var app=express();

 var server=http.createServer(app);

 var fs=require("fs");

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

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

 });

 server.listen(1337);

 var socket=sio.listen(server);

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

     socket.emit("news",{hello:"你好"});

     socket.on("otherEvent", function (data) {

         console.log("服务器端接受到数据:%j",data);

     })

 });

客户端index.html代码

 <!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("news", function (data) {

             console.log(data.hello);

             socket.emit("otherEvent",{my:"data"});

         });

     </script>

 </head>

 <body>

 </body>

 </html>

忽然想到一个问题.我可不可以把news的监听代码写到和emit的同一端.

这样:

 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 socket=sio.listen(server);

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

     socket.on("news", function (data) {

     console.log(data.hello);

     });

     socket.emit("news",{hello:"你好"});

 });

注意15~17行代码:是我们新添加的.

事实证明不可以,不会有任何的打印.但是也是不会报错的.

emit的执行,美其名曰:发送事件.如果有参数,美其名曰:携带参数.

后记:

在网上也找到不少关于Express框架中的session调用方法,可是发现真正能用的不是很多,本文是根据自己项目的制作过程,整理的Express和socket.IO中使用session的具体方法。

Javascript 相关文章推荐
jquery select下拉框操作的一些说明
Apr 02 Javascript
自写简单JS判断是否已经弹出页面
Oct 20 Javascript
jQuery中hasClass()方法用法实例
Jan 06 Javascript
JavaScript实现下拉菜单的显示和隐藏
Jan 05 Javascript
如何利用JS通过身份证号获取当事人的生日、年龄、性别
Jan 22 Javascript
灵活的理解JavaScript中的this指向
Feb 25 Javascript
BootStrap学习笔记之nav导航栏和面包屑导航
Jan 03 Javascript
JS批量替换内容中关键词为超链接
Feb 20 Javascript
vue滚动轴插件better-scroll使用详解
Oct 17 Javascript
基于vue 添加axios组件,解决post传参数为null的问题
Mar 05 Javascript
JavaScript解析及序列化JSON的方法实例分析
Jan 04 Javascript
详解滑动穿透(锁body)终极探索
Apr 16 Javascript
node.js中使用socket.io制作命名空间
Dec 15 #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
You might like
一棵php的类树(支持无限分类)
2006/10/09 PHP
PHP中读取照片exif信息的方法
2014/08/20 PHP
PHP基于phpqrcode生成带LOGO图像的二维码实例
2015/07/10 PHP
PHP curl 或 file_get_contents 获取需要授权页面的方法
2017/05/05 PHP
PHP基于堆栈实现的高级计算器功能示例
2017/09/15 PHP
Laravel框架下的Contracts契约详解
2020/03/17 PHP
基于jquery的button默认enter事件(回车事件)。
2011/05/18 Javascript
JS实现的省份级联实例代码
2013/06/24 Javascript
js同比例缩放图片的小例子
2013/10/30 Javascript
树结构之JavaScript
2017/01/24 Javascript
JavaScript 中 apply 、call 的详解
2017/03/21 Javascript
基于JavaScript实现的折半查找算法示例
2017/04/14 Javascript
Angularjs根据json文件动态生成路由状态的实现方法
2017/04/17 Javascript
VueJs 将接口用webpack代理到本地的方法
2017/11/27 Javascript
微信小游戏之使用three.js 绘制一个旋转的三角形
2019/06/10 Javascript
vue实现短信验证码登录功能(流程详解)
2019/12/10 Javascript
Vue时间轴 vue-light-timeline的用法说明
2020/10/29 Javascript
在Python的while循环中使用else以及循环嵌套的用法
2015/10/14 Python
浅谈Python 字符串格式化输出(format/printf)
2016/07/21 Python
Python一行代码实现快速排序的方法
2019/04/30 Python
Django中使用 Closure Table 储存无限分级数据
2019/06/06 Python
python实现时间序列自相关图(acf)、偏自相关图(pacf)教程
2020/06/03 Python
Python实现将元组中的元素作为参数传入函数的操作
2020/06/05 Python
windows+vscode安装paddleOCR运行环境的步骤
2020/11/11 Python
CSS3 @font-face属性使用指南
2014/12/12 HTML / CSS
纯css实现照片墙3D效果的示例代码
2017/11/13 HTML / CSS
前台接待员岗位职责
2014/01/02 职场文书
财务科科长岗位职责
2014/03/10 职场文书
英文求职信范文
2014/05/23 职场文书
经典禁毒标语
2014/06/16 职场文书
2014班子“三严三实”对照检查材料思想汇报
2014/09/18 职场文书
单位一把手群众路线四风问题整改措施
2014/09/25 职场文书
上班时间打瞌睡检讨书
2014/09/26 职场文书
幼儿教师师德师风自我剖析材料
2014/09/29 职场文书
老人节主持词
2015/07/04 职场文书
小学一年级语文教学反思
2016/03/03 职场文书