如何使用zlib解压缩JSON响应

时间:2013-03-18 07:45:13

标签: json node.js http zlib

我尝试使用以下代码发送JSON响应,但它给出了一个错误说

console.log(zlib.createGunzip()).pipe(data);
TypeError: Cannot call method 'pipe' of undefined

我的代码:

res.on('data', function (chunk) {
  data += chunk;
  console.log(data);
  console.log(res.headers['content-encoding']);
  var output;

  switch (res.headers['content-encoding']) {
    // or, just use zlib.createUnzip() to handle both cases
    case 'gzip':
      console.log(data);
      console.log(zlib.createGunzip()).pipe(data);
    break;

    case 'deflate':
      console.log(zlib.createInflate()).pipe(data);
    break;

    default:
      console.log(data);
    break;
  }
});

任何有关此方面的帮助都非常有用。

1 个答案:

答案 0 :(得分:2)

console.log()什么都不返回(未定义)。您正尝试在console.log的返回值

上调用方法管道

我想你需要这个console.log(zlib.createGunzip().pipe(data));