在同一个文件中发送和接收套接字io

时间:2015-06-22 04:15:28

标签: node.js express socket.io

我想做一些事情,我可以使用/visit等设置到app.get('/visit', function(req, res){})等链接的路径。在其中,我想发出一条消息,如socket.emit("event", "a message")然后在我的io.on("connection")函数中,能够侦听event并返回消息。我访问过的所有示例似乎都有一个如何在访问html页面时执行此操作的示例...但是如何只使用显示类似res.json()的常规路由来执行此操作?< / p>

1 个答案:

答案 0 :(得分:1)

如果您尝试在同一文件中发出和侦听事件,则应该使用节点的内置事件侦听器,而不是socket.io(https://nodejs.org/api/events.html)的专用侦听器:

var EventEmitter = require('events').EventEmitter;
var eventExample = new EventEmitter;

//You can create event listeners:
eventExample.on('anEvent', function(someData){
    //Do something with someData
});

//To trigger an event listener you must emit:
eventExample.emit('anEvent', someData);