X-Git-Url: http://git.squeep.com/?p=squeep-indieauth-helper;a=blobdiff_plain;f=lib%2Fcommon.js;fp=lib%2Fcommon.js;h=c1b8703d58d435a127a80fcfaec70b73358a2a2c;hp=3bf7e55cc7e85a4cd050fd2708dc2726fa9f9d94;hb=cc52f66ba8522b6bc7002dfba79c1162a51aef0e;hpb=03cdf23c601ed191fb3d23f5d5bd7b3c7198e578 diff --git a/lib/common.js b/lib/common.js index 3bf7e55..c1b8703 100644 --- a/lib/common.js +++ b/lib/common.js @@ -17,20 +17,28 @@ const fileScope = (filename) => { /** - * Pick out useful axios response fields. - * @param {AxiosResponse} res + * Pick out useful got response fields. + * @param {GotResponse} res * @returns {Object} */ -const axiosResponseLogData = (res) => { +const gotResponseLogData = (res) => { const data = pick(res, [ - 'status', - 'statusText', + 'statusCode', + 'statusMessage', 'headers', - 'elapsedTimeMs', - 'data', + 'body', ]); - if (data.data) { - data.data = logTruncate(data.data, 100); + if (typeof res.body === 'string') { + data.body = logTruncate(data.body, 100); + } else if (res.body instanceof Buffer) { + data.body = ``; + } + data.elapsedTimeMs = res?.timings?.phases?.total; + if (res?.redirectUrls?.length) { + data.redirectUrls = res.redirectUrls; + } + if (res?.retryCount) { + data.retryCount = res.retryCount; } return data; }; @@ -98,23 +106,11 @@ const properURLComponentName = (component) => { } -/** - * Encodes single-level object as form data string. - * @param {Object} data - */ -const formData = (data) => { - const formData = new URLSearchParams(); - Object.entries(data).forEach(([name, value]) => formData.set(name, value)); - return formData.toString(); -}; - - module.exports = { fileScope, - axiosResponseLogData, + gotResponseLogData, logTruncate, pick, setSymmetricDifference, properURLComponentName, - formData, }; \ No newline at end of file