使用node.js和“ws”-package(API:bitfinex)了解基本的websocket API

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用node.js和“ws”-package(API:bitfinex)了解基本的websocket API相关的知识,希望对你有一定的参考价值。

我试图找出使用node.js的基本websocket通信,“ws”-package(这似乎是来自npmjs.com的非常流行的websocket包)和bitfinex.com(加密货币交换)websocket API。我想读一下某个货币对的公共股票代码,文档在这里:https://docs.bitfinex.com/v2/reference#ws-public-ticker

到目前为止,我的结果是有效的,但仍然与我根据文档得到的结果大不相同。

我正在处理从上面链接的文档中获取的代码片段:

const ws = require('ws')
const w = new ws('wss://api.bitfinex.com/ws/2')

w.on('message', (msg) => {
    console.log(msg)
})

let msg = JSON.stringify({ 
  event: 'subscribe', 
  channel: 'ticker', 
  symbol: 'tBTCUSD' 
})

 w.on('open', () => {
    w.send(msg)
 })  

到目前为止,通过向订阅者输出来自订阅频道的消息:[1,[14873,23.49464465,14874,61.09031263,1087,0.0789,14872,56895.20497085,15500,13891]]

但是现在,这就是问题,在文档中,响应看起来不同。我如何确定哪个数字是什么?我应该能够从响应中获得更多信息,不是吗?给定的示例响应如下所示:

// response - trading
{
    event: "subscribed",
    channel: "ticker",
    chanId: CHANNEL_ID,
    pair: "BTCUSD"
 }

这与我得到的那一组数字有什么关系?例如,我如何读取“pair:”字段(“BTCUSD”)或任何其他列出的字段,如(BID,BID_PERIOD,VOLUME,HIGH,LOW等)?我错过了一些明显的东西吗

我知道要立刻提出这个问题很多,但也许有人知道一两个很好的例子或提示来启发我。提前致谢!

亲切的问候,s

以上是关于使用node.js和“ws”-package(API:bitfinex)了解基本的websocket API的主要内容,如果未能解决你的问题,请参考以下文章

Node.js 和 Socket.io UTF8 验证 TypeError 来自 ws

如何使用 node.js“ws”库服务器端监听后续消息

搭建Node.js Redis开发环境

在 Node JS 中为 WebSocket (ws) 使用自签名 CA 证书

请教如何使用node.js创建socket ssl链接

Node.js Websocket 区分不同的用户