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/

相关推荐
jserTang5 分钟前
Claude Code 源码深度解析 - 前言
前端·javascript·后端
weixin_408717777 分钟前
Go语言怎么编译Linux程序_Go语言编译Linux可执行文件教程【避坑】
jvm·数据库·python
清溪54926 分钟前
Damn Vulnerable Web Application(中)
后端
清溪54929 分钟前
Damn Vulnerable Web Application(上)
后端
2501_9449347332 分钟前
财务岗位如何在工作中提升数据分析能力?从财务分析到经营分析这样练
python·信息可视化·数据分析
掘金码甲哥39 分钟前
AI编程智能体登味太浓了,必须治一治!
后端
2401_8654396339 分钟前
CSS怎么在flex布局中实现项目均分间距_设置justify-content space-evenly
jvm·数据库·python
m0_4939345339 分钟前
CSS如何实现输入框禁用样式_使用-disabled伪类设定
jvm·数据库·python
StackNoOverflow1 小时前
SpringCloud的声明式服务调用 Feign 全面解析
后端·spring·spring cloud
m0_716430071 小时前
如何用 classList.toggle 实现侧边栏菜单的点击展开与收起
jvm·数据库·python