Skip to content

Instantly share code, notes, and snippets.

@herrersystem
Last active August 7, 2018 07:13
Show Gist options
  • Save herrersystem/5bcc67b0b18fcd9f9b7ffc0abed6d088 to your computer and use it in GitHub Desktop.
Save herrersystem/5bcc67b0b18fcd9f9b7ffc0abed6d088 to your computer and use it in GitHub Desktop.
[Django] Custom HTTP Header with decorator
'''
A noter qu'il s'agit d'un exemple. Par exemple si vous ne souhaitez modifier que
l'en-tête X-FRAME-OPTIONS, django à prévu le coup:
https://github.com/django/django/blob/master/django/views/decorators/clickjacking.py
'''
def complete_headers(view_func):
def wrapped_view(*args, **kwargs):
#Objet HTTPResponse retourné par render.
response = view_func(*args, **kwargs)
response['X-Frame-Options'] = 'DENY'
response['X-Content-Type-Options'] = 'nosniff'
response['X-XSS-Protection'] = '1; mode=block'
return response
return wrapped_view
'''
Dans app_quelconque/views.py :
from app_quelconque.decorators import complete_headers
@complete_headers
def my_view(request):
return render(request, 'template.html')
'''
@ivermac
Copy link

ivermac commented Aug 7, 2018

👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment