Skip to content

Commit

Permalink
webcompat#609 Adds caching on issues view
Browse files Browse the repository at this point in the history
  • Loading branch information
karlcow committed Jan 19, 2017
1 parent f6a65b7 commit 7876456
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 4 deletions.
8 changes: 6 additions & 2 deletions webcompat/helpers.py
Expand Up @@ -16,10 +16,8 @@
from babel.dates import format_timedelta
from flask import abort
from flask import g
from flask import redirect
from flask import request
from flask import session
from flask import url_for
from form import IssueForm
from functools import wraps
from ua_parser import user_agent_parser
Expand Down Expand Up @@ -458,3 +456,9 @@ def api_request(method, path, params=None, data=None):
get_response_headers(resource))
else:
abort(404)


def make_etag(content):
'''Given a string creates an etag.'''
etag = hashlib.md5(content).hexdigest()
return etag
9 changes: 7 additions & 2 deletions webcompat/views.py
Expand Up @@ -6,11 +6,11 @@

import json
import logging
import urllib

from flask import abort
from flask import flash
from flask import g
from flask import make_response
from flask import redirect
from flask import render_template
from flask import request
Expand All @@ -20,6 +20,7 @@

from form import AUTH_REPORT
from form import PROXY_REPORT
from helpers import make_etag
from helpers import get_browser_name
from helpers import get_form
from helpers import get_referer
Expand Down Expand Up @@ -214,7 +215,11 @@ def show_issue(number):
if session.get('show_thanks'):
flash(number, 'thanks')
session.pop('show_thanks')
return render_template('issue.html', number=number)
content = render_template('issue.html', number=number)
response = make_response(content)
response.headers['Etag'] = make_etag(content)
response.headers['Cache-Control'] = 'private, max-age=86400'
return response


@app.route('/me')
Expand Down

0 comments on commit 7876456

Please sign in to comment.