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/

相关推荐
焗猪扒饭3 小时前
redis stream用作消息队列极速入门
redis·后端·go
树獭非懒4 小时前
AI大模型小白手册|Embedding 与向量数据库
后端·python·llm
IT_陈寒6 小时前
SpringBoot实战:5个让你的API性能翻倍的隐藏技巧
前端·人工智能·后端
梦想很大很大7 小时前
拒绝“盲猜式”调优:在 Go Gin 项目中落地 OpenTelemetry 链路追踪
运维·后端·go
唐叔在学习7 小时前
就算没有服务器,我照样能够同步数据
后端·python·程序员
用户68545375977698 小时前
同步成本换并行度:多线程、协程、分片、MapReduce 怎么选才不踩坑
后端
javaTodo8 小时前
Claude Code 记忆机制详解:从 CLAUDE.md 到 Auto Memory,六层体系全拆解
后端
LSTM978 小时前
使用 C# 和 Spire.PDF 从 HTML 模板生成 PDF 的实用指南
后端
JaguarJack8 小时前
为什么 PHP 闭包要加 static?
后端·php·服务端