Django
中间件:概述
中间件:自定义
Celery(一)
内置应用的作用
内置中间件的作用
Celery(二)
模型 class Meta
模型 管理器(Manager)
related_name 介绍
prefetch_related 介绍
本文档使用 MrDoc 发布
-
+
首页
内置中间件的作用
``` MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', ] ``` 以下是你提到的几个 Django 中间件的作用: 1. **`django.middleware.security.SecurityMiddleware`**: - 提供了一些安全增强功能,如强制使用 HTTPS、设置安全相关的 HTTP 头等。 - 示例:可以设置 `SECURE_HSTS_SECONDS` 来启用 HTTP 严格传输安全 (HSTS)。 2. **`django.contrib.sessions.middleware.SessionMiddleware`**: - 管理用户会话,允许在请求之间存储和检索用户特定的数据。 - 示例:在用户登录后,使用会话来保持用户的登录状态。 3. **`django.middleware.common.CommonMiddleware`**: - 提供了一些常见的 HTTP 功能,如 URL 规范化、GZip 压缩等。 - 示例:可以设置 `APPEND_SLASH` 来自动在 URL 末尾添加斜杠。 4. **`django.middleware.csrf.CsrfViewMiddleware`**: - 提供跨站请求伪造 (CSRF) 保护,防止恶意网站向你的站点提交请求。 - 示例:在表单中使用 `{% csrf_token %}` 标签来生成 CSRF 令牌。 5. **`django.contrib.auth.middleware.AuthenticationMiddleware`**: - 关联用户和请求,允许在视图中访问 `request.user` 来获取当前登录的用户。 - 示例:在视图中使用 `if request.user.is_authenticated` 来检查用户是否已登录。 6. **`django.contrib.messages.middleware.MessageMiddleware`**: - 管理临时消息,允许在请求之间传递反馈消息。 - 示例:在视图中使用 `messages.add_message` 来添加消息,在模板中使用 `{% if messages %}` 来显示消息。 7. **`django.middleware.clickjacking.XFrameOptionsMiddleware`**: - 提供点击劫持保护,通过设置 `X-Frame-Options` HTTP 头来防止页面被嵌入到 `<iframe>` 中。 - 示例:可以设置 `X_FRAME_OPTIONS` 为 `DENY` 或 `SAMEORIGIN` 来启用保护。 这些中间件在 Django 项目中提供了各种功能和安全性增强,帮助开发者更轻松地管理请求和响应。
gaojian
2024年10月25日 10:43
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 MrDoc
觅思文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅思文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅思文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
Markdown文件
分享
链接
类型
密码
更新密码