Merge pull request #186 from play-dl/developer

Request compression issue fixed
This commit is contained in:
Killer069 2021-12-07 14:01:46 +05:30 committed by GitHub
commit 9a23c24d4a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -76,16 +76,22 @@ export function request(req_url: string, options: RequestOpts = { method: 'GET'
reject(new Error(`Got ${res.statusCode} from the request`));
}
const data: string[] = [];
let decoder: BrotliDecompress | Gunzip | Deflate;
let decoder: BrotliDecompress | Gunzip | Deflate | undefined = undefined;
const encoding = res.headers['content-encoding'];
if (encoding === 'gzip') decoder = zlib.createGunzip();
else if (encoding === 'br') decoder = zlib.createBrotliDecompress();
else decoder = zlib.createDeflate();
else if (encoding === 'deflate') decoder = zlib.createDeflate();
res.pipe(decoder);
decoder.setEncoding('utf-8');
decoder.on('data', (c) => data.push(c));
decoder.on('end', () => resolve(data.join('')));
if (decoder) {
res.pipe(decoder);
decoder.setEncoding('utf-8');
decoder.on('data', (c) => data.push(c));
decoder.on('end', () => resolve(data.join('')));
} else {
res.setEncoding('utf-8');
res.on('data', (c) => data.push(c));
res.on('end', () => resolve(data.join('')));
}
});
}