Fixed internal Request issue.

This commit is contained in:
killer069 2021-12-15 13:54:56 +05:30
parent c2fd8f1e5c
commit cf6425b4a9

View File

@ -39,7 +39,6 @@ export function request_stream(req_url: string, options: RequestOpts = { method:
*/ */
function internalRequest( function internalRequest(
req_url: string, req_url: string,
cookies_added: boolean,
options: RequestOpts = { method: 'GET' } options: RequestOpts = { method: 'GET' }
): Promise<IncomingMessage> { ): Promise<IncomingMessage> {
return new Promise(async (resolve, reject) => { return new Promise(async (resolve, reject) => {
@ -49,14 +48,11 @@ function internalRequest(
return; return;
} }
if (Number(res.statusCode) >= 300 && Number(res.statusCode) < 400) { if (Number(res.statusCode) >= 300 && Number(res.statusCode) < 400) {
res = await internalRequest(res.headers.location as string, cookies_added, options); res = await internalRequest(res.headers.location as string, options);
} else if (Number(res.statusCode) > 400) { } else if (Number(res.statusCode) > 400) {
reject(new Error(`Got ${res.statusCode} from the request`)); reject(new Error(`Got ${res.statusCode} from the request`));
return; return;
} }
if (res.headers && res.headers['set-cookie'] && cookies_added) {
cookieHeaders(res.headers['set-cookie']);
}
resolve(res); resolve(res);
}); });
} }
@ -83,11 +79,14 @@ export function request(req_url: string, options: RequestOpts = { method: 'GET'
'user-agent': getRandomUserAgent() 'user-agent': getRandomUserAgent()
}; };
} }
const res = await internalRequest(req_url, cookies_added, options).catch((err: Error) => err); const res = await internalRequest(req_url, options).catch((err: Error) => err);
if (res instanceof Error) { if (res instanceof Error) {
reject(res); reject(res);
return; return;
} }
if (res.headers && res.headers['set-cookie'] && cookies_added) {
cookieHeaders(res.headers['set-cookie']);
}
const data: string[] = []; const data: string[] = [];
let decoder: BrotliDecompress | Gunzip | Deflate | undefined = undefined; let decoder: BrotliDecompress | Gunzip | Deflate | undefined = undefined;
const encoding = res.headers['content-encoding']; const encoding = res.headers['content-encoding'];