gecko-dev/dom/browser-element/mochitest/file_bug741717.sjs

28 lines
764 B
JavaScript

function handleRequest(request, response)
{
function etag(count) {
return '"anetag' + count + '"';
}
var count = parseInt(getState('count'));
if (!count)
count = 0;
// reload(false) will make a request with If-None-Match headers
var ifNoneMatch = request.hasHeader("If-None-Match") ?
request.getHeader("If-None-Match") : "";
if (ifNoneMatch === etag(count)) {
response.setStatusLine(request.httpVersion, "304", "Not Modified");
return;
}
count++;
setState('count', count + '');
response.setHeader('Content-Type', 'text/html', false);
response.setHeader('Cache-Control', 'public, max-age=3600', false);
response.setHeader("ETag", etag(count), false);
response.write('<html><body>' + count + '</body></html>');
}