SocketIoClientDotNet 返回错误 "An item with the same key has already been added"



我正在尝试使用c#控制台与服务器端的 socket.io 建立连接,并且正在使用Quobject.SocketIoClientDotNet。我不知道为什么每当程序运行时

var cSocket = IO。套接字(网络套接字);

它返回错误

"已添加具有相同键的项目"

Socket2("ws://eng.testsoc.com/socket.io/?md=" + myid + "&en=&id=1&rd=&EIO=3&transport=websocket&sid=" + sid);
public static void Socket2(string websocket)
{
     try
        {
            var options = new IO.Options() { IgnoreServerCertificateValidation = true, AutoConnect = true, ForceNew = true };
            var cSocket = IO.Socket(websocket); //Hit Error An item with the same key has already been added 
            cSocket.Connect();
            cSocket.On(Socket.EVENT_CONNECT, () =>
            {
                Console.WriteLine("success");
            });
            cSocket.On(Socket.EVENT_DISCONNECT, () =>
            {
                Console.WriteLine("Disconnected");
            });
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
 }

我的问题是为什么会返回此错误,并且我调用套接字的方式不正确

正如我所注意到的,这个库省略了标准的WebSocket URI,而不是

Socket soc = new Socket("ws://172.16.0.9:3000/socket.io/?EIO=4&transport=websocket");

我刚刚通过,它奏效了:

Socket soc = new Socket("http://172.16.0.9:3000");

相关内容

最新更新