无法使用WebSocket4Net连接到websocket服务器

时间:2013-01-30 10:32:40

标签: websocket wss mochiweb websocket4net

我有一个mochiweb作为WebSocket服务器;使用来自 Chrome 浏览器的JavaScript连接,因为ws客户端流畅(打开,发送消息,关闭)。但是,当我尝试使用 websocket4Net 从C#连接时,我总是从 mochiweb 获得以下错误。

  

= CRASH REPORT ==== 2013年1月30日:: 16:57:41 ===     不速之客:       初始调用:mochiweb_acceptor:init / 3       pid:< 0.228.0>       registered_name:[]       异常错误:没有case子句匹配{error,timeout}         在函数mochiweb_http:websocket_init_with_origin_validated / 4(mochiweb_http.erl,第292行)         来自mochiweb_http的电话:headers_ws_upgrade / 4(mochiweb_http.erl,第192行)       祖先:[cim_https,< 0.166.0>]       消息:[]       链接:[< 0.167.0>]       字典:[]       trap_exit:false       状态:正在运行       heap_size:1597       stack_size:24       减少:1585

我的C#代码段:

        webSocketClient = new WebSocket("wss://localhost:8080/login");
                    webSocketClient.Error += new EventHandler<SuperSocket.ClientEngine.ErrorEventArgs>(webSocketClient_Error) ;
        webSocketClient.AllowUnstrustedCertificate = true;
        webSocketClient.Opened += new EventHandler(webSocketClient_Opened);
        webSocketClient.Closed += new EventHandler(webSocketClient_Closed);
        webSocketClient.MessageReceived += new EventHandler<MessageReceivedEventArgs>(webSocketClient_MessageReceived);
        webSocketClient.Open();

有没有我错过的参数?有关如何追踪这个的任何想法?

1 个答案:

答案 0 :(得分:1)

发现了这个问题。显然,Mochiweb只支持websocket4net中被称为Hybi00的内容 - 不支持RFC 6455。 好像现在我必须修补我的mochiweb。