【问题标题】:Socket.io inside express routes快速路线内的 Socket.io
【发布时间】:2013-08-09 14:52:10
【问题描述】:

是否可以在 express 路由中使用 socket.io?

我希望它看起来像这样:

服务器

app.js:

app.get('/cool_page/',users.cool_page);

users.cool_page:

if (5>3){
 socket.emit('first_connection',"true statement");
}

客户:

socket.on('first_connection',function(data){
 if (data === "true statement"){
  console.log("success");
 }

到目前为止,它还没有工作。我试图将 users.cool_page 封装在 io.sockets.on("conection",function(socket){code...}) 中,但这没有用。我还在 users.cool_page 中重新定义了一些变量;喜欢

var express = require('express');
var app = express();
var server = require('http').createServer(app);
var io = require('socket.io').listen(server);

但它仍然不起作用:没有真正输出任何错误。

感谢您的帮助。谢谢。

【问题讨论】:

标签: javascript node.js express socket.io


【解决方案1】:

要执行此类操作,您需要使用 socket.io.connect 之类的东西将每个套接字链接到一个快速会话

socket.io 本身不知道 express 的会话,反之亦然。

【讨论】:

    【解决方案2】:

    简短的回答是肯定的,您只需确保使用中间件或请求模拟器将套接字调用绑定到请求。然而,这里更好的答案是让您利用诸如expressio 之类的框架以更健壮的方式实现这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-01-30
      • 1970-01-01
      • 2013-09-22
      • 2020-01-24
      • 2013-03-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多