首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ws.on和ws.onmessage的websockets区别

ws.on和ws.onmessage的websockets区别
EN

Stack Overflow用户
提问于 2017-12-31 16:56:39
回答 1查看 1K关注 0票数 3

我正在使用javascript中的websockets连接到一个API并读取一些数据。

以下是代码:

代码语言:javascript
复制
function processHUOBIAPI(client,exchange_name,exchange_wss,exchange_symbol)
{
  // Define constants
  const WebSocket = require('ws');
  const pako = require('pako');

  // Open connection once one is established
  var wss = new WebSocket(exchange_wss);

  wss.onopen = () =>
  {
    // Send request to subscribe
    var symbol = exchange_symbol.toLowerCase()
    wss.send(JSON.stringify(
      {
        "sub": "market." + symbol + ".kline.1min",
        "id": symbol
      }
    ));
  };

  // Parse channel information and send to Redis
  wss.onmessage = (data) =>
  {
    //typedef data;
    console.log("Receive message", data);
    let text = pako.inflate(data, {
        to: 'string'
    });
    mssg = JSON.parse(text);
    if (mssg.ping) {
        wss.send(JSON.stringify({
            pong: mssg.ping
        }));
    } else if (mssg.tick) {
        console.log(mssg);
        //handle(msg);
    } else {
        console.log(text);
    }
  }

在这种情况下,我得到了一个错误:

./node_modules/pako/lib/通货膨胀. if :384 if (inflator.err) {抛出inflator.msg \ msginflator.err;}^未知压缩方法

如果我将"wss.onmessage = (data) =>"改为"wss.on“('message',(data) => {"并移除额外的')‘,代码工作得很好。

wss.on和wss.onmessage有什么区别?

这位新手非常感谢你的指导。如果这是个愚蠢的道歉.

EN

回答 1

Stack Overflow用户

发布于 2017-12-31 20:33:04

WSWebSocket API的包装器,因此"onmessage“在这里不能工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48044294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档