From a29b4b2472da76b07d3be914b23f9cabc552ea3e Mon Sep 17 00:00:00 2001 From: Amio Date: Sat, 11 Aug 2018 21:20:59 +0800 Subject: [PATCH] fix: always return 200 for badge #102 GitHub's camo proxy only accept 200. =. = --- libs/live-handlers.js | 10 ++++------ libs/serve-404.js | 2 +- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/libs/live-handlers.js b/libs/live-handlers.js index ea7c28d..257cf5a 100644 --- a/libs/live-handlers.js +++ b/libs/live-handlers.js @@ -6,13 +6,11 @@ const liveFetcher = require('./live-fetcher.js') const { API_HOST } = process.env const apiFetcher = async url => { - return axios.get(API_HOST + url, { - validateStatus: status => status >= 200 && status < 300 - }).then( + return axios.get(API_HOST + url).then( res => res.data, err => { console.error('API_ERR', url, err.message) - return { ...err.response.data, statusCode: err.response.status } + return { ...err.response.data, httpCode: 200 } } ) } @@ -24,7 +22,7 @@ module.exports = Object.entries(liveFns).map(([name, fn]) => { status = 'unknown', color = 'grey', failed = false, - statusCode = 200 + httpCode = 200 } = await ( API_HOST ? apiFetcher(req.url) @@ -34,7 +32,7 @@ module.exports = Object.entries(liveFns).map(([name, fn]) => { const style = req.headers.host === 'flat.badgen.net' ? 'flat' : undefined req.params = { subject, status, color, style } serveBadge(req, res, { - code: statusCode, + code: httpCode, maxAge: failed ? '0' : (Math.random() * 60 + 60).toFixed() }) }) diff --git a/libs/serve-404.js b/libs/serve-404.js index ab4682a..80dd04f 100644 --- a/libs/serve-404.js +++ b/libs/serve-404.js @@ -6,5 +6,5 @@ module.exports = (req, res) => { status: '404', color: 'red' } - serveBadge(req, res, { code: 404 }) + serveBadge(req, res, { code: 200 }) }