推杆无法建立连接

时间:2019-08-20 19:55:45

标签: ruby stream pusher

我正在尝试使用pusher连接到Liquid Exchange的Stream API。 Documentation here

我构造了一个与Pusher库的文档一致的函数。 Link to that here 我当前的代码如下:

require 'pusher-client'
channels_client = PusherClient::Socket.new('LIQUID', {
      ws_host: 'tap.liquid.com'
  })

运行该错误消息:

  

D,[2019-08-20Txx:xx:xx.xxxxxx #xxxxx]调试-:绑定   pusher:已建立与pusher_global_channel的连接

     

D,[2019-08-20Txx:xx:xx.xxxxxx #xxxxx]调试-:绑定   pusher:connection_disconnected与pusher_global_channel

     

D,[2019-08-20Txx:xx:xx.xxxxxx #xxxxx]调试-:绑定推杆:错误   到pusher_global_channel

     

D,[2019-08-20Txx:xx:xx.xxxxxx #xxxxx]调试-:绑定推杆:ping   到pusher_global_channel

如果我尝试在第一个命令后运行此命令:

channels_client.connect

...它拒绝连接。

  

C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/pusher-client-0.6.2/lib/pusher-client/websocket.rb:17:in   'initialize':由于目标机器,无法建立连接   积极拒绝。 -为“ tap.liquid.com”端口80连接(2)   (Errno :: ECONNREFUSED)

1 个答案:

答案 0 :(得分:1)

错误来自websocket第17行中的tcpsocket.new(Ruby https://ruby-doc.org/stdlib-2.5.1/libdoc/socket/rdoc/TCPSocket.html):https://github.com/pusher-community/pusher-websocket-ruby/blob/master/lib/pusher-client/websocket.rb

ws_host tap.liquid.com 80似乎无效,https://pusher.com/docs/channels/library_auth_reference/pusher-websockets-protocol

我已经尝试过至少在浏览器中使用安全连接,并且为ws和无效请求获得了404,在这种情况下,对于https(https://tap.liquid.com/)来说是个好选择。

您需要在客户端配置中配置ssl,但是pusher-client gem和我发现的其他非常古老。切换到https://github.com/pusher/pusher-http-ruby/blob/master/README.md

这样的最新库也许是明智的

该示例直接包含用于激活的SSL的选项。