【发布时间】:2023-03-23 05:45:01
【问题描述】:
我正在尝试使 nodejs(socket.io) 服务器与另一个服务器通信。 因此客户端向“集线器”服务器发出一个事件,该服务器向第二个服务器发出一个事件以处理该操作。
我尝试过:
var io_client = require( 'socket.io-client' );
然后,
io_client.connect( "second_server_host" );
它似乎适用于连接,但您对此无能为力:
debug - set close timeout for client 15988842591410188424
info - socket error Error: write ECONNABORTED
at errnoException (net.js:642:11)
at Socket._write (net.js:459:18)
at Socket.write (net.js:446:15)
我想我做错了,遗漏了一些明显的东西。
有什么建议吗?
【问题讨论】:
-
“second_server_host”会发生什么?它是否正确接受连接?它会过早关闭连接吗?你检查关闭的连接吗?
-
是的,抱歉,日志来自“第二个”服务器。它接受连接,因此正在调用连接回调
io.sockets.on('connection', connection_callback ),但是当我尝试对某些事件(即socket.on('server_to_server_command', command_callback))设置回调时,它会失败,并带有上面的错误日志(ECONNABORTED)。我只是想我根本不应该在服务器上使用 socket.io-client,必须有一种方法可以正确地进行这些服务器间通信.. -
好的,最近好像修复了,这里是线程groups.google.com/group/socket_io/browse_thread/thread/…
-
请考虑接受答案