【问题标题】:Node.js: zlib Compression in a tcp connectionNode.js:tcp 连接中的 zlib 压缩
【发布时间】:2012-06-21 05:37:17
【问题描述】:

我是 node.js 的新手,目前正在使用 tcp 服务器。我希望所有消息都以压缩格式发送给客户端。为此我使用 zlib。

以下示例是服务器端的代码:

zlib.deflate(response.toString(), function(err, buffer) {
          if (!err) {
            session.xmlSocket.writeString(buffer);
            }
          }); 

这个函数基本上是压缩数据并将其写入套接字。客户端解压数据的代码是:

this.socket.on("data", function(chunk){
     zlib.unzip(chunk, function(err, buffer) {
     if (!err) {
            self.parser.write(buffer.toString());
        console.log(buffer.toString());
      }
    });

现在,当我在同一台电脑上同时运行客户端和服务器时,这段代码可以正常工作。但是直接编写 zlib.deflate 函数返回的 Buffer 对象并将其写入套接字然后在客户端上使用它是否正确一边?

【问题讨论】:

    标签: javascript node.js tcp buffer zlib


    【解决方案1】:

    不要发送原始对象。试试 buffer.toString()。

    session.xmlSocket.writeString(buffer.toString());

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多