84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
并且做到两个端口数据的互相传输?
是想实现这样的功能:一个客户端给8090端口发送数据,处理过后,然后由连接到8091端口的客户端接收,反之亦然。不过现在连单向都还没实现_(:з」∠)_
现在只用到了net模块,是否需要用到其他的才行?新手求指点啊~
问题在于有多个客户端的时候如何处理?比如多个客户端都连了8091,然后给8090的数据处理后发给哪个客户端?
这里假设你需要的是广播;假设数据都在一个包内传完,不考虑多个数据包
clients = { s1: {}, s2: {} } onConnect1 = (socket)-> id = RANDOM_ID() clients.s1[id] socket #有人连8090 socket.on 'data', (buffer)-> #处理数据 result = YOUR_LOGIC buffer #处理完以后发广播 Object.keys(clients.s2).forEach (k)-> clients.s2[k].write result #通信结束 socket.on 'end', ()-> delete clients.s1[id] onConnect2 = (socket)-> #差不多抄一遍,如果来回逻辑就是一样的话可以复用一下 s1 = net.createServer onConnect1 s2 = net.createServer onConnect2 s1.listen 8090 s2.listen 8091
问题在于有多个客户端的时候如何处理?比如多个客户端都连了8091,然后给8090的数据处理后发给哪个客户端?
这里假设你需要的是广播;假设数据都在一个包内传完,不考虑多个数据包