Django CSRF令牌

在Django中,为了防止CSRF(Cross-Site Request Forgery,跨站请求伪造)攻击,Django提供了一个中间件django.middleware.csrf.CsrfViewMiddleware,它会自动在所有的POST表单中添加一个隐藏的CSRF令牌字段。这个令牌在服务器端生成,并在用户提交表单时验证,以确保请求是来自同一个网站的合法请求。

1,设置CSRF令牌

Test/Test/settings.py

2,添加视图函数

Test/app13/urls.py

复制代码
# Create your views here.
from django.shortcuts import render
from django.http import HttpResponse

def my_form_view(request):
    if request.method == 'POST':
        # 这是POST请求,处理表单数据
        form_data = request.POST
        print(form_data)
        # 获取表单字段的值
        example_field_value = form_data.get('example_field', '')
        # 可以在这里对表单数据进行校验和处理
        # ...
        # 返回响应
        return HttpResponse('表单已提交,example_field的值是: ' + example_field_value)
    else:
        # 这是GET请求,显示表单
        return render(request, '14/my_form.html')

3,添加路由地址

Test/app13/urls.py

复制代码
from django.urls import path
from . import views

urlpatterns = [

    path('my_form_view/', views.my_form_view, name='my_form_view'),
]

4,访问页面

http://127.0.0.1:8000/app14/my_form_view/

相关推荐
weixin_431600441 分钟前
NestJS 入门(10):日志——为什么常用 Winston?
后端·学习·日志·nest.js·winston
中科高级技工学校17 分钟前
乌鲁木齐美术艺考技校实践分享
人工智能·python
步行cgn31 分钟前
MyBatis <where> 标签详解:让你的动态 SQL 更优雅、更安全
后端
RainCity41 分钟前
Java Swing 自定义组件库分享(十六)
java·笔记·后端
沙盘客41 分钟前
AFSIM 14篇 C++ 插件开发:扩展你的仿真能力
c++·后端
桦说编程41 分钟前
如何对待中断异常:一个被吞掉的 InterruptedException 引发的思考
后端
CodeBlog-star1 小时前
LLM能力与边界:多模态、幻觉、上下文窗口及开源模型对比
人工智能·python·开源·llm
COOLMO研究AI1 小时前
Python 如何实现 AI API 的动态路由与多通道负载均衡:多账号与多供应商的高可用调度
人工智能·python·负载均衡
菜冻鱼1 小时前
Python-sklearn-降维
开发语言·人工智能·python·机器学习·支持向量机·sklearn
OptimizationMaster1 小时前
Python自动重启中国移动光猫(ZXHN G7611V2)
python·自动化工具·重启中国移动光猫