【问题标题】:Add custom http header in RedirectView在 RedirectView 中添加自定义 http 标头
【发布时间】:2016-09-29 09:41:27
【问题描述】:

我想添加 http 标头,但它不起作用。 我正在尝试使用打印来测试解决方案,但它似乎什么也没有

这是我的代码,但不起作用:

class MyRedirectView(RedirectView):

    def head(self, *args, **kwargs):
        response = HttpResponse()
        response['X-Robots-Tag'] = 'noindex'
        print('TEST')
        return response

【问题讨论】:

    标签: python django http-headers django-class-based-views


    【解决方案1】:

    您在这里所做的是覆盖head 方法。仅在对您的 url 发出 HEAD 类型的 HTTP 请求时使用。您应该重写 get 方法,或者最好还是使用 dispatch 方法。

    class MyRedirectView(RedirectView):
    
        def dispatch(self, *args, **kwargs):
            response = super(MyRedirectView,self).dispatch(*args, **kwargs)
            response['X-Robots-Tag'] = 'noindex'
            print('TEST LOL')
            return response
    

    【讨论】:

    • 很高兴能帮上忙
    猜你喜欢
    • 1970-01-01
    • 2013-05-15
    • 2015-06-01
    • 2012-04-23
    • 2010-10-09
    • 1970-01-01
    • 1970-01-01
    • 2016-04-12
    • 2017-11-11
    相关资源
    最近更新 更多