1

在这里使用这个答案,我正在尝试使用 jawampa 连接到 Poloniex 公共推送 API,但 jawampa 不会连接。我的代码是:

try
{
    WampClientBuilder builder = new WampClientBuilder();
    IWampConnectorProvider connectorProvider = new NettyWampClientConnectorProvider();
    builder.withConnectorProvider(connectorProvider)
            .withUri("wss://api.poloniex.com")
            .withRealm("realm1")
            .withInfiniteReconnects()
            .withReconnectInterval(5, TimeUnit.SECONDS);
    client = builder.build();
}
catch (Exception e)
{
    return;
}

client.statusChanged().subscribe(new Action1<WampClient.State>()
{
    @Override
    public void call(WampClient.State t1)
    {
        if (t1 instanceof WampClient.ConnectedState)
        {
            System.out.println("subscribing...");
            Subscription subscription = client.makeSubscription("ticker")
                    .subscribe((s) -> { System.out.println(s.arguments()); });
        }
        else
            System.out.println(t1.getClass().toString());
    }
});

client.open();

System.out.println("ok");

输出是:

类 ws.wamp.jawampa.WampClient$DisconnectedState

好的

类 ws.wamp.jawampa.WampClient$ConnectingState

然后什么也没有发生。我让它打印出 WampClient 类名字符串,以帮助了解发生了什么。我究竟做错了什么?


我什至复制了我在这里找到的另一个实现,但它仍然不起作用。这个人的实现给出了以下输出:

会话状态更改为断开连接

会话状态更改为正在连接

...但是它就像我上面的代码一样挂起。

4

0 回答 0