GNU/Linux >> Tutoriels Linux >  >> Linux

Comment lire la réponse websocket dans le shell Linux

J'aimerais ajouter mon propre outil pour cela :websocat.

Exemple de session avec le service en question :

$ rlwrap  websocat wss://ws-feed.gdax.com

# Now enter this line (without the #) for the required JSON request:
# {"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"}

# To stop the feed, type this line: 
{"type":"unsubscribe","channels": [{ "name": "heartbeat", "product_ids": ["BTC-USD"] }]}
{"type":"subscriptions","channels":[]}

Outre un client websocket, websocat prend en charge le serveur WebSocket et d'autres modes et vise à intégrer les websockets dans le monde "UNIX" en général.


Eh bien, vous pouvez essayer d'imiter les en-têtes requis pour obtenir une réponse en utilisant curl :

  • https://gist.github.com/htp/fbce19069187ec1cc486b594104f01d0 ou
  • Linux Bash :comment ouvrir une connexion websocket en tant que client

En outre, il existe d'autres moyens de communiquer avec un serveur WebSocket, par ex.

  • https://github.com/websockets/wscat
  • https://github.com/bvasti/webpipe
  • https://github.com/progrium/wssh

En supposant que vous avez node installé, je donnerais wscat un coup de feu; c'est simple , intuitif , et puissant . Sinon, la réponse de @ Pavel propose une abondance d'alternatives vénérables au client websocket.

# install
npm install -g wscat

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

Linux
  1. Comment définir votre variable $PATH sous Linux

  2. Comment lire les balises MP3 dans Shell ?

  3. Comment changer de shell sous Linux

  4. Comment taper des caractères spéciaux sous Linux ?

  5. Comment ajouter des utilisateurs à Linux via un script shell

Comment lancer Fish Shell en mode privé sous Linux

Comment déterminer le type MIME d'un fichier sous Linux

Comment stocker une commande Linux en tant que variable dans un script shell

Comment installer Linux Bash Shell sur Windows 10

Comment changer un shell d'utilisateurs sous Linux

Comment installer et utiliser Nu Shell sous Linux