04 декабря 2012

Меняем заголовок ответа в Pyramid/Pylons

Обычно в заголовке находится что то типа:
Content-Length 6657
Content-Type text/html; charset=UTF-8
итд

Изменить заголовок можно например в настройках Apache или nginx или в самом приложении.
Для Pylons пишем WSGI middleware:
class HeaderMiddleware(object):
    '''WSGI middleware'''

    def __init__(self, application):

        self.app = application

    def __call__(self, environ, start_response):

        request = Request(environ)
        resp = request.get_response(self.app)
        resp.headers['X-Frame-Options'] = 'DENY'

        return resp(environ, start_response)

Для Pyramid можно обойтись без WSGI:
#view.py
from pyramid.events import subscriber
from pyramid.events import NewRequest

@subscriber(NewRequest)
def add_header(event):
    response = event.request.response
    response.headers.add('X-Frame-Options', 'DENY')

Комментариев нет:

Отправить комментарий