From bdfef85bb0871ee6b3b384c1d870ea7f3de43cab Mon Sep 17 00:00:00 2001 From: Oj Date: Mon, 14 Mar 2022 18:49:08 +0000 Subject: [PATCH] [Poly > Request] Cleanup source a bit --- poly/request.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/poly/request.js b/poly/request.js index 9786b04..38d20fc 100644 --- a/poly/request.js +++ b/poly/request.js @@ -2,12 +2,11 @@ const https = require('https'); // Generic polyfill for "request" npm package, wrapper for https const nodeReq = ({ method, url, headers, qs, timeout, body, stream }) => new Promise((resolve) => { - const fullUrl = `${url}${qs != null ? `?${(new URLSearchParams(qs)).toString()}` : ''}`; // With query string - let req; try { - req = https.request(fullUrl, { method, headers, timeout }, async (res) => { - if (res.statusCode === 301 || res.statusCode === 302) return resolve(await nodeReq({ url: res.headers.location, method, headers, timeout, body, stream })); + req = https.request(url + (qs != null ? `?${(new URLSearchParams(qs)).toString()}` : ''), { method, headers, timeout }, async (res) => { + const loc = res.headers.location; + if (loc) return resolve(await nodeReq({ url: loc, method, headers, timeout, body, stream })); resolve(res); }); @@ -50,9 +49,7 @@ const request = (...args) => { nodeReq(options).then(async (res) => { if (!res.statusCode) { listeners['error']?.(res); - callback?.(res, null, null); - - return; + return callback?.(res, null, null); } listeners['response']?.(res);