如何在node的express中使用socket.io_Javascript教程-查字典教程网
如何在node的express中使用socket.io
如何在node的express中使用socket.io
发布时间:2016-12-30 来源:查字典编辑
摘要:服务器端server.js代码复制代码代码如下:varexpress=require("express");varhttp=require(...

服务器端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="http://www.jb51.netsocket.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教程学习
    热门Javascript教程学习
    编程开发子分类