chore: re-enable fetcher gateway

pull/166/head
Amio 2018-09-21 16:55:53 +08:00
rodzic a1bb0ce826
commit 55ac76aebd
1 zmienionych plików z 15 dodań i 1 usunięć

Wyświetl plik

@ -1,4 +1,5 @@
const { get } = require('micro-fork')
const got = require('./got.js')
const liveFns = require('./live-fns/_index.js')
const serveBadge = require('./serve-badge.js')
const liveFetcher = require('./live-fetcher.js')
@ -10,7 +11,7 @@ module.exports = Object.entries(liveFns).map(([name, fn]) => {
status = 'unknown',
color = 'grey',
failed = false
} = await liveFetcher(name, fn, req.params['*'])
} = await fetchGateway(req, name, fn)
const style = req.headers.host === 'flat.badgen.net' ? 'flat' : undefined
req.params = { subject, status, color, style }
@ -20,3 +21,16 @@ module.exports = Object.entries(liveFns).map(([name, fn]) => {
})
})
})
const { API_HOST = 'https://api.badgen.net' } = process.env
const fetchGateway = (req, name, fn) => {
const host = req.headers.host
if (host === 'badgen.net' || host === 'flat.badgen.net' || process.env.API_HOST) {
return got(API_HOST + req.url).then(
res => res.body,
err => ({ failed: true, ...(err.response && err.response.body) })
)
} else {
return liveFetcher(name, fn, req.params['*'])
}
}