From 3d38aebcb7e2c1e7f765d5ac55330040ebff6845 Mon Sep 17 00:00:00 2001 From: orenom Date: Sat, 23 Jul 2022 17:47:39 +0200 Subject: [PATCH] fix reading http status code, sometimes response is undefined (fixes #79) --- src/utils.js | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/utils.js b/src/utils.js index 2bc1871..040dd54 100644 --- a/src/utils.js +++ b/src/utils.js @@ -49,16 +49,20 @@ module.exports = function(redis) { console.log(`Fetched url ${url} from Wikipedia.`) return { success: true, html: body, processed: false, url: url } } catch(err) { - const { statusCode } = err.response - if(statusCode !== 200) { - if(statusCode === 404) { + let status_code = null + if(err.response) { + status_code = err.response.statusCode + } + if(status_code !== 200) { + if(status_code === 404) { // let's redirect 404s to homepage - console.log(`Didn't find ${url} HTTP status code: ${statusCode}`) + // TODO: maybe add some 404 page? + console.log(`Didn't find ${url} HTTP status code: ${status_code}`) return { success: false, reason: 'REDIRECT', url: 'https://wikipedia.org/' } } - console.log(`Error while fetching data from ${url}. HTTP status code: ${statusCode}`) - return { success: false, reason: `INVALID_HTTP_RESPONSE: ${statusCode}` } + console.log(`Error while fetching data from ${url}. HTTP status code: ${status_code}`) + return { success: false, reason: `INVALID_HTTP_RESPONSE: ${status_code}` } } } }