Skip to content

Instantly share code, notes, and snippets.

@mmerickel
Last active July 11, 2016 07:48
Show Gist options
  • Save mmerickel/d9efb2ab358be75e6767 to your computer and use it in GitHub Desktop.
Save mmerickel/d9efb2ab358be75e6767 to your computer and use it in GitHub Desktop.
static asset detection
class StaticFactory(object):
def __init__(self, request):
request.is_static_asset = True
config.add_static_view('static', static_pkg, factory=StaticFactory)
config.add_request_method(lambda r: False, 'is_static_asset', reify=True)
_default_vary = set([
'Cookie',
'Accept',
'Accept-Language',
'Authorization',
])
_default_static_vary = set([
'Accept',
'Accept-Language',
])
def new_response_subscriber(event):
request = event.request
response = event.response
if request.is_static_asset:
vary = _default_static_vary
else:
vary = _default_vary
if response.vary is not None:
response.vary = vary.union(response.vary)
else:
response.vary = vary
config.add_subscriber(new_response_subscriber, 'pyramid.events.NewResponse')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment