如何向所有 Django 响应添加 HTTP 标头 [英] How to add an HTTP header to all Django responses

查看:31
本文介绍了如何向所有 Django 响应添加 HTTP 标头的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想为我的 Django 网站返回的所有响应添加一些标题.有没有办法做到这一点(除了向 render 函数添加包装器)?

I'd like to add a few headers to all responses that my Django website returns. Is there a way to do this (besides adding a wrapper to the render function)?

推荐答案

是的,你应该看看 中间件.

yourapp/middleware.py

class MyMiddleware:

    def __init__(self, get_response):
        self.get_response = get_response

    def __call__(self, request):
        response = self.get_response(request)
        response['X-My-Header'] = "my value"
        return response

你的项目/settings.py

MIDDLEWARE = [
    ...,
    'yourapp.middleware.MyMiddleware',
    ...,
]

这篇关于如何向所有 Django 响应添加 HTTP 标头的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆