2016-07-23 22 views
8

İşte WampSharp en son yayın öncesi sürümünü kullanarak çok basit kodudur: WampSharp Poloniex'e bağlanamıyor mu?

 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(); 

olsa Çalışmaz, abonelik içinde kod asla çalışır. CreateJsonChannel ile de çalıştı, bu da işe yaramıyor.

Herhangi bir fikir yanlış olabilir?

+0

Poloniex websocket api'yi kullanmaya çalışıyorum. Örnek kodunuz var mı? – Luther

+0

Bunu çözdünüz mü? –

+0

Bu onların API'si, sizin kodunuz değil. API'ları veri göndermiyor. Yayınlanan node.js örneğiyle denedim ve hiçbir veri geri gelmiyor. – Simoyd

cevap

1

Kodunuzun düzgün çalışıyor. Sadece Console.ReadLine'den kurtulun - WebSocket parçasını engeller ve bu nedenle WampSharp başka mesaj alamaz. Bunun yerine bir Console.ReadLine'ı Main'ınıza ekleyebilirsiniz.

Ayrıca bkz. blog post.

+0

Örnekleri tam olarak gösterdiği gibi mantıklı olmaz: http://wampsharp.net/wamp2/roles/subscriber/getting-started-with-subscriber/ – YesMan85

+1

Buradaki fark, bağlandığınız örnekte '' 'channel.Open.Wait (5000)' '' '' '' '' '' '' '' 'dır. Bekleme anahtar sözcüğü, WebSocket'ın iş parçacığında gelecek satırların çalışmasına neden olur. – darkl

+0

Ah Görüyorum, ben düzeltilmeyi bekliyorum. – YesMan85

İlgili konular