2017-05-09 5 views
4

iam in websocket私は.net 4.5フレームワークでコンソールアプリケーションを作成し、ライブラリ "WebSocketSharp"を使用してサンプルwebsocketクライアントを作成しました。私は次のコードを持っていますWebSocket接続を作成するときにSystem.Net.Sockets.SocketExceptionが発生する

using System; 
using WebSocketSharp; 


namespace WebsocketTest 
{ 
    class Program 
    { 
     public static void Main(string[] args) 
     { 
      try 
      { 
      using (var ws = new WebSocketSharp.WebSocket("ws://192.168.18.186:7884")) 
      { 
       Console.WriteLine("started"); 
       ws.Connect(); 
       ws.Send("START"); 
       Console.ReadLine(); 
       } 
      }catch(Exception ex) 
      { 
       Console.WriteLine(ex.Message); 
       Console.ReadLine(); 
      } 

     } 
    } 
} 

しかし、私は別のマシンで実行されているwebsocketサーバーへの接続を作成できません。このようなエラーメッセージが表示されます

09-05-2017 16:20:41|Fatal|WebSocket.connect:0|System.Net.Sockets.SocketException (0x80004005): No connection could be made because the target machine actively refused it 192.168.18.186:7884 
          at System.Net.Sockets.TcpClient..ctor(String hostname, Int32 port) 
          at WebSocketSharp.WebSocket.setClientStream() 
          at WebSocketSharp.WebSocket.doHandshake() 
          at WebSocketSharp.WebSocket.connect() 

私のコードに関連する問題は何ですか?任意の良いwebsocketライブラリが利用可能ですか?

答えて

1

コードが問題であるかどうかを確認する最も簡単な方法は、Webソケット対応ブラウザを使用してエンドポイントに接続し、何が起こるかを確認することです。 Webソケットはテキストプロトコル(http 1.1ヘッダー)として開始され、SSLを使用していないので、接続を開いていくつかのダミーヘッダーを送信できるだけなので、telnetを使用することもできます。 telnetが接続できない場合:あなたのコードはできません。

telnetに接続すると、クライアントlibに問題が発生する可能性があります。実際に.NETに組み込まれているWebソケットクライアントがあります(ClientWebSocket

関連する問題