From 244f655055b6d802de9a3595f2dc7032fd0c6bd6 Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Sat, 27 Feb 2016 18:40:05 -0500 Subject: [PATCH] Suppress browser cache for API requests Browser caching can interfere with our goal of delivering fresh data. Suppress the cache behavior for our API. --- confluent_server/confluent/httpapi.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/confluent_server/confluent/httpapi.py b/confluent_server/confluent/httpapi.py index 3eabb440..8773e09d 100644 --- a/confluent_server/confluent/httpapi.py +++ b/confluent_server/confluent/httpapi.py @@ -347,7 +347,7 @@ def resourcehandler_backend(env, start_response): return if authorized['code'] != 200: raise Exception("Unrecognized code from auth engine") - headers = [('Content-Type', mimetype)] + headers = [('Content-Type', mimetype), ('Cache-Control', 'no-cache')] headers.extend( ("Set-Cookie", m.OutputString()) for m in authorized['cookie'].values()) @@ -426,8 +426,8 @@ def resourcehandler_backend(env, start_response): greenlet.getcurrent()) if loggedout is not None: consolesessions[sessid]['session'].destroy() - start_response('401 Logged out', []) - yield 'Logged out' + start_response('401 Logged out', headers) + yield '{"loggedout": 1}' return bufferage = False if 'stampsent' not in consolesessions[sessid]: @@ -495,7 +495,8 @@ def resourcehandler_backend(env, start_response): if e.apierrorcode == 500: # raise generics to trigger the tracelog raise - start_response('{0} {1}'.format(e.apierrorcode, e.apierrorstr)) + start_response('{0} {1}'.format(e.apierrorcode, e.apierrorstr), + headers) yield e.get_error_body() def _assemble_html(responses, resource, querydict, url, extension):