From 4f2f95fed71dbbac918438d93094e9c582bb68db Mon Sep 17 00:00:00 2001 From: Thaddee Tyl Date: Sat, 14 May 2016 15:18:58 +0200 Subject: [PATCH] Production cache debugging endpoint Initially motivated by a CloudFlare cache error (#534). --- server.js | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/server.js b/server.js index b8ed756..43d2358 100644 --- a/server.js +++ b/server.js @@ -4849,10 +4849,6 @@ cache(function(data, match, sendBadge, request) { badgeData.logo = badgeData.logo || logos['gitter-white']; badgeData.logoWidth = 9; } - ask.res.setHeader('Cache-Control', 'max-age=50'); - var reqTime = new Date(); - var date = (new Date(+reqTime + 50 * 1000)).toGMTString(); - ask.res.setHeader('Expires', date); // CloudFlare test. sendBadge(format, badgeData); })); @@ -5204,6 +5200,21 @@ function(data, match, end, ask) { } }); +// Production cache debugging. +var bitFlip = false; +camp.route(/^\/flip\.svg$/, function(data, match, end, ask) { + var cacheSecs = 60; + ask.res.setHeader('Cache-Control', 'max-age=' + cacheSecs); + var reqTime = new Date(); + var date = (new Date(+reqTime + cacheSecs * 1000)).toGMTString(); + ask.res.setHeader('Expires', date); + var badgeData = getBadgeData('flip', data); + bitFlip = !bitFlip; + badgeData.text[1] = bitFlip? 'on': 'off'; + badgeData.colorscheme = bitFlip? 'brightgreen': 'red'; + badge(badgeData, makeSend('svg', ask.res, end)); +}); + // Any badge, old version. camp.route(/^\/([^\/]+)\/(.+).png$/, function(data, match, end, ask) {