diff --git a/libs/serve-404.js b/libs/serve-404.js new file mode 100644 index 0000000..6d1a2b3 --- /dev/null +++ b/libs/serve-404.js @@ -0,0 +1,13 @@ +const badgen = require('badgen') + +module.exports = function serve404 (req, res) { + res.writeHead(404, { + 'Content-Type': 'image/svg+xml;charset=utf-8', + 'Cache-Control': 'public, max-age=360, s-maxage=86400' + }) + res.end(badgen({ + subject: 'Badgen', + status: '404', + color: 'red' + })) +} diff --git a/service.js b/service.js index c0cd9af..bf99c9c 100644 --- a/service.js +++ b/service.js @@ -3,6 +3,7 @@ const router = require('find-my-way')() const setupLiveBadge = require('./libs/setup-live-badge.js') const setupRedirectBadge = require('./libs/setup-redirect-badge.js') const serveIndex = require('./libs/serve-index.js') +const serve404 = require('./libs/serve-404.js') const { serveBadge, serveListBadge } = require('./libs/serve-badge.js') router.get('/badge/:subject/:status', serveBadge) @@ -14,11 +15,7 @@ setupLiveBadge(router) setupRedirectBadge(router) router.get('/', serveIndex) -router.all('/*', (req, res) => serveBadge(req, res, { - subject: 'badgen', - status: '404', - color: 'red' -})) +router.all('/*', serve404) const rootHandler = (req, res) => { try {