Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.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
Javascript 如何为';ws';Web套接字模块?_Javascript_Node.js_Websocket - Fatal编程技术网

Javascript 如何为';ws';Web套接字模块?

Javascript 如何为';ws';Web套接字模块?,javascript,node.js,websocket,Javascript,Node.js,Websocket,是否可以为NodeJS中的“ws”websocket模块创建自定义事件发射器和侦听器(就像socket.io中的一样)。如果是的话,我怎样才能做到呢 //以下是我想要实现的目标(反之亦然): 我是新来的,但经过一点搜索,答案似乎是否定的 据《邮报》报道,这似乎是一种被接受的方式,即使用类似于[eventname,data\u object]的消息格式,然后解析它这非常古老,但我今天早些时候遇到了这个问题。 我成功地使用了下面显示的内置addEventListener属性 ws.addEventL

是否可以为NodeJS中的“ws”websocket模块创建自定义事件发射器和侦听器(就像socket.io中的一样)。如果是的话,我怎样才能做到呢

//以下是我想要实现的目标(反之亦然):


我是新来的,但经过一点搜索,答案似乎是否定的


据《邮报》报道,这似乎是一种被接受的方式,即使用类似于
[eventname,data\u object]
的消息格式,然后解析它这非常古老,但我今天早些时候遇到了这个问题。 我成功地使用了下面显示的内置
addEventListener
属性

ws.addEventListener('YourCustomEvent', (data) => {
    // data.data contains your forwarded data
    console.log(data.data)
})
需要记住的是,socketio有一个特殊的结构,在使用HTML5WebSockets时必须手动解析它

您可以对
消息
事件执行相同的操作(依此类推)


然后使用
socket.emit(“customEmit”)触发它

这似乎不起作用。不能单独使用
ws
触发自定义事件。更多信息请访问:,
ws.addEventListener('YourCustomEvent', (data) => {
    // data.data contains your forwarded data
    console.log(data.data)
})
ws.addEventListener('message', (data) => {
    // data.data contains your forwarded data
    console.log(data.data)
})
const websocket = require('ws');
const socket = new websocket.Server(options);
socket.on("customEmit", (ws, req) => {
    console.log("custom event");
});