如果我愿意
socket.emit("eventname",data);
我正在发出一个事件到套接字。如果我想过滤这个发射,我会附加一个函数并使用这个函数
function emit(socket,eventname,data)
{
.. // process event data
socket.emit(eventname,data); // emiting processed
}
但我想以某种方式覆盖该对象,以方便地处理或修改所有输出(和输入事件数据),例如修剪对象的字符串。 O 还会为语法异常添加一个过滤器,以避免可能导致进程崩溃的错误格式的 json 或注入(inject)过滤器...
如何在不直接修改 socket.io 代码但以某种方式重写的情况下做到这一点。对不起,如果这个问题很愚蠢。
最佳答案
你可以重新定义 socket.emit
socket.__emit = socket.emit
socket.emit = function (channel, data) {
//process data;
socket.__emit(channel, data);
};
关于node.js - 如何一般地过滤所有 socket.io 事件数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15601049/