nodejs 怎么使用gunzip函数?
发布于 10 年前 作者 Morn 5007 次浏览 最后一次编辑是 8 年前

最近google用不上,一直找不到准确的对zlib用法的示例,官网API里面提到的example貌似都不管用。 对于Gunzip这个方法到底怎么用的?哪个大神会?我的node是0.10.26的,应该不算老吧,但是用下面这种格式数据怎么都出不来。 zlib.gunzip(buf, [options], callback).

PS,我在写一个自动登录的脚本,设置response 的 encoding是gzip的。

1 回复
var responseString = '', encoding = res.headers['content-encoding'];
    if( encoding === 'undefined'){
        res.setEncoding('utf-8');
    }
    gunzip.on('data', function (chunk) {
        responseString += chunk.toString();
    });
    gunzip.on('end', function () {
        var buffer = Buffer.concat(responseString);
        if (encoding == 'gzip') {
            zlib.gunzip(buffer, function (err, decoded) {
                data = decoded.toString();
                callback(err,res.headers, data);
            });
        }
        else {
            data = buffer.toString();
            callback( null,res.headers, data);
        }
回到顶部