web-dev-qa-db-ja.com

bashでwebsocketレスポンスを読む方法

GDAXのWebsocket Feed に接続するbashスクリプトを書く

curl "wss://ws-feed.gdax.com"
curl: (1) Protocol "wss" not supported or disabled in libcurl
18
J. Doe

必要なヘッダーを模倣して、curlを使用して応答を得ることができます。

また、WebSocketサーバーと通信する方法は他にもあります。

16
Pavel

nodeがインストールされていると仮定すると、 wscat ショットを与えます。 simpleintuitive、および強​​力な。それ以外の場合、@ Pavelの答えには、由緒あるWebSocketクライアントの選択肢が豊富にあります。

# install
npm install -g wscat

# use
wscat -c "wss://ws-feed.gdax.com"
25
Travis Clarke

このための独自のツール websocat を追加したいと思います。

問題のサービスとのセッションの例:

$ rlwrap  websocat wss://ws-feed.gdax.com
{"type":"subscribe","channels": [{ "name": "heartbeat", "product_ids": ["BTC-USD"] }]}
{"type":"subscriptions","channels":[{"name":"heartbeat","product_ids":["BTC-USD"]}]}
{"type":"heartbeat","last_trade_id":46274575,"product_id":"BTC-USD","sequence":6312079752,"time":"2018-07-12T22:32:42.655000Z"}
{"type":"heartbeat","last_trade_id":46274575,"product_id":"BTC-USD","sequence":6312079800,"time":"2018-07-12T22:32:43.656000Z"}
{"type":"heartbeat","last_trade_id":46274575,"product_id":"BTC-USD","sequence":6312079834,"time":"2018-07-12T22:32:44.656000Z"}
{"type":"heartbeat","last_trade_id":46274575,"product_id":"BTC-USD","sequence":6312079945,"time":"2018-07-12T22:32:45.656000Z"}
{"type":"heartbeat","last_trade_id":46274575,"product_id":"BTC-USD","sequence":6312079990,"time":"2018-07-12T22:32:46.657000Z"}
{"type":"heartbeat","last_trade_id":46274575,"product_id":"BTC-USD","sequence":6312080042,"time":"2018-07-12T22:32:47.657000Z"}
{"type":"heartbeat","last_trade_id":46274576,"product_id":"BTC-USD","sequence":6312080169,"time":"2018-07-12T22:32:48.657000Z"}
{"type":"unsubscribe","channels": [{ "name": "heartbeat", "product_ids": ["BTC-USD"] }]}
{"type":"subscriptions","channels":[]}

Websocketクライアントに加えて、websocatはWebSocketサーバーおよびその他のモードをサポートし、websocketを「UNIX」の世界に統合することを目的としています。

7
Vi.