如何从sockettio4net断开连接

本文关键字:断开 连接 sockettio4net | 更新日期: 2023-09-27 18:14:10

我有一个从c#客户端连接到node.js服务器的应用程序在c#客户端,我使用socket4net和websocket4net

使用nodejs和socket.io

当我关闭程序(c#)时,断开连接事件没有发送到服务器。所以我得到了错误:

socket error error: read ECONNRESET at errnoexception (net.js: 558:19)

,但如果我使用套接字。io客户端(javascript)而不是c#,当我关闭浏览器,一切工作良好这是我的代码:

server.js:

var io= require('socket.io').listen(3000);
io.on('connection', function (socket) {  
    socket.on('disconnect', function () {
    // handle here
    })
})
c#客户:

client = new Client("http://127.0.0.1:3000/");
socket = client.Connect();

javascript客户端:

io.connect("127.0.0.1:3000");
有谁能帮帮我吗?非常感谢

如何从sockettio4net断开连接

这显然是一个老问题,但我实际上昨天有这个问题,所以我不妨把它贴出来。解决方法是为程序的onClose创建一个事件并调用socket.Close()。

对于我来说,我使用WPF所以在我的xaml:

& lt; x窗口:类= "的例子。主窗口"…关闭= " Window_Closing ">

和后面的代码:

private void Window_Closing(对象发送者,CancelEventArgs e){socket.Close ();}