Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在Socket.IO中的所有发出调用之前是否有一些事件/方法?_Node.js_Socket.io - Fatal编程技术网

Node.js 在Socket.IO中的所有发出调用之前是否有一些事件/方法?

Node.js 在Socket.IO中的所有发出调用之前是否有一些事件/方法?,node.js,socket.io,Node.js,Socket.io,我有很多数据是通过Socket.IO发送的,在某些情况下,我需要检查某个特定对象之前是否发送到浏览器?那么,在任何emit调用之前是否存在某种方法或事件,我可以在其中运行双重检查,并在某些情况下停止发送过程?某种中间件 否,socket.io正确地期望您在发出事件之前处理任何检查。不应该出现这样的情况:您已经完成了检查,准备发出一个事件,然后在发出该事件后立即更改了某些内容 对于async和socket.io,如果您以正确的顺序发出事件(如果您有一系列事件,那么前一个事件应该触发下一个事件),那

我有很多数据是通过Socket.IO发送的,在某些情况下,我需要检查某个特定对象之前是否发送到浏览器?那么,在任何
emit
调用之前是否存在某种方法或事件,我可以在其中运行双重检查,并在某些情况下停止发送过程?某种中间件

否,socket.io正确地期望您在发出事件之前处理任何检查。不应该出现这样的情况:您已经完成了检查,准备发出一个事件,然后在发出该事件后立即更改了某些内容

对于async和socket.io,如果您以正确的顺序发出事件(如果您有一系列事件,那么前一个事件应该触发下一个事件),那么您的情况就不会发生

我建议重新构造您的代码,然后再看一看。但是,如果您仍然想执行要求的操作,可以编写一个包装函数myEmit(),它接受socket.io的emit()并添加一些检查


覆盖socket.io的emit()还是只调用myEmit()取决于您(pst,不要这样做)。

主要问题是我有大约10个文件/类,它们解析来自多个源的数据,并为用户提供一个列表。每个类由几个方法组成,每个方法都有2-3个嵌套回调的
请求
。所以基本上我需要在每个类中检查数据,而不是在发出之前检查一个。。。