2016-07-23 17 views
8

Hier mein sehr einfacher Code ist die neueste Vorabversion von WampSharp mit:WampSharp kann keine Verbindung zu Poloniex herstellen?

 var channelFactory = new DefaultWampChannelFactory(); 
     var channel = channelFactory.CreateMsgpackChannel("wss://api.poloniex.com", "realm1"); 
     await channel.Open(); 

     var realmProxy = channel.RealmProxy; 

     Console.WriteLine("Connection established"); 

     int received = 0; 
     IDisposable subscription = null; 

     subscription = 
      realmProxy.Services.GetSubject("ticker") 
         .Subscribe(x => 
      { 
       Console.WriteLine("Got Event: " + x); 

       received++; 

       if (received > 5) 
       { 
        Console.WriteLine("Closing .."); 
        subscription.Dispose(); 
       } 
      }); 

     Console.ReadLine(); 

Hat aber nicht funktioniert, innerhalb des Abonnements der Code nie ausgeführt wird. Versucht es auch mit CreateJsonChannel, das funktioniert auch nicht.

Irgendwelche Ideen, was könnte falsch sein?

+0

Ich versuche, die Poloniex Websocket API zu verwenden. Hast du einen funktionierenden Beispielcode? – Luther

+0

hast du es gelöst? –

+0

Es ist ihre API, nicht Ihr Code. Ihre API sendet keine Daten. Ich habe es mit dem geposteten node.js-Beispiel versucht und auch keine Daten kommen zurück. – Simoyd

Antwort

1

Ihr Code funktioniert gut. Löschen Sie einfach die Console.ReadLine - sie blockiert den WebSocket-Thread und daher kann WampSharp keine weiteren Nachrichten erhalten. Sie können stattdessen eine Console.ReadLine zu Ihrem Main hinzufügen.

Siehe auch blog post.

+0

Das würde keinen Sinn ergeben, da ihr Beispiel genau das zeigt: http://wampsharp.net/wamp2/roles/subscriber/getting-started-with-subscriber/ – YesMan85

+1

Der Unterschied ist, dass sie in dem Beispiel, mit dem Sie verlinkt haben, verwenden '' 'channel.Open.Wait (5000)' '' und nicht '' 'erwarten channel.Open()' ''. Das Schlüsselwort await bewirkt, dass die nächsten Zeilen im WebSocket-Thread ausgeführt werden. – darkl

+0

Ah ich sehe, ich stehe korrigiert. – YesMan85

Verwandte Themen