import os.path from wptserve.utils import isomorphic_decode def main(request, response): key = request.GET[b'id'] alreadyServedRequest = False try: alreadyServedRequest = request.server.stash.take(key) except (KeyError, ValueError) as e: pass if alreadyServedRequest: body = open(os.path.join(os.path.dirname(isomorphic_decode(__file__)), u"../../../../images/red.png"), u"rb").read() else: request.server.stash.put(key, True); body = open(os.path.join(os.path.dirname(isomorphic_decode(__file__)), u"../../../../images/green.png"), u"rb").read() pass response.writer.write_status(200) response.writer.write_header(b"etag", b"abcdef") response.writer.write_header(b"content-length", len(body)) response.writer.write_header(b"content-type", b"image/png") response.writer.write_header(b"cache-control", b"public, max-age=31536000, no-cache") response.writer.end_headers() response.writer.write(body)