使用 chromes 开发工具模仿从 www 到 bittrex 的 websocket 连接并不是什么大问题:
GET https://socket.bittrex.com/signalr/negotiate?clientProtocol=1.5&connectionData=%5B%7B%22name%22%3A%22c2%22%7D%5D&_=1524596108843
这将返回一个令牌
"ConnectionToken":"gbLsm8C6Jck1mQTTFjmuIv5qgUuMZz/kXU1s+fAnjnW
qUFQocNBfp3VOrd/y0acxWL5Fv7MZ54heRddLYZS+EMhLnaPPQiSZblvgJPCbLKqZTIkb"
这需要与:
wss://socket.bittrex.com/signalr/connect?
transport=webSockets&clientProtocol=1.5&connectionToken=
然后有一些命令发送到 websocket:
{"H":"c2","M":"SubscribeToSummaryLiteDeltas","A":[],"I":0}
{"H":"c2","M":"SubscribeToExchangeDeltas","A":["BTC-TRX"],"I":1}
{"H":"c2","M":"QueryExchangeState","A":["BTC-TRX"],"I":2}
这会生成有关所选代码 BTC-TRX 的 bittrex 流数据。但这里的事情开始变得奇怪:
这是框架的样子:
{"C":"d-C95D047D-E,0|OHjr,0|OHjs,2|CW,6116","M":[{"H":"C2","M":"uE","A":["dY+7DsIwDEX/xXOI7NiOnYwwg0TpwENd+QnUfydtBQKp9ear4yPfFxyhwr4/7PruCgFOUJO4SoA71McL+lsLAnRQMeI0xhzg3EKXQpEFzUvyMayhiWaUOJtqLCZKonkcAly+cvyXl/lCHKOyaxbDdbUuamMXzhELk5lvvKE+s0yoyWPKVIhwg81LO8OcNCZOGQn5g9IPSuyLtq1To2drNIxv"]}]}
它当然看起来像 base64,但解码它给了我类似的东西:
u����0E��s��؎��0�D��C]���'m����#��¾?��NP��J�;��[tP1�4� ��B�B��K�1���f�8�j,&J�y\�r����B��k�u�.jc�o��>�L��c �T�p��K;Ü4&N���J싶�S�gk4�o
有没有人想出如何把它变成可读的数据?