【django】Forbidden (CSRF cookie not set.)

CSRF

表示django全局发送post请求均需要字符串验证

功能: 防止跨站请求伪造的功能

工作原理: 客户端访问服务器端,在服务器端正常返回给客户端数据的时候,而外返回给客户端一段字符串,等到客户端下次访问服务器端时,服务器端会到客户端查找先前返回的字符串,如果找到则继续,找不到就拒绝。

访问流程: 客户端-》URL路由系统 - 》 CSRF -》视图函数我这里要写的是一个内部使用的api接口,也不大会有 跨站请求伪造所以这里提供两个不是很推荐,但是非常简单的方式解决这个问题既然不需要 CSRF 这里我们就把CSRF检测关掉即可

方法一

在项目的setting.py中注释下列,全局禁用csrf

方法二

相关视图函数加修饰器,免除csrf验证

python 复制代码
from django.views.decorators.csrf import csrf_exempt
python 复制代码
@csrf_exempt
def view_func(...): ...
相关推荐
茉莉玫瑰花茶4 小时前
工作流的常见模式 [ 1 ]
java·服务器·前端
南京码讯光电技术有限公司7 小时前
工业无线AP选型指南:从WiFi 5到WiFi 6+5G CPE,如何构建全覆盖、零漫游、高可靠的智能工厂网络?
服务器·网络·5g
二宝哥7 小时前
Linux虚拟机网络配置
linux·运维·服务器
陳10308 小时前
Linux:进程间通信 和 简单进程池
linux·运维·服务器
jimy18 小时前
改.bashrc,直观地判断本地repo是否有改动
linux·服务器
zt1985q8 小时前
本地部署网页监控工具 Webmonitor 并实现外部访问
运维·服务器·网络·网络协议
匆匆那年9679 小时前
远程 Linux 校园网认证操作手册(本地浏览器法)
linux·运维·服务器
dog2509 小时前
为何新增网络路径反而引入额外时延
服务器·网络·php
newnazi9 小时前
RedHat10 安装MS SQL Server2025
linux·服务器·数据库
IT策士10 小时前
Django 从 0 到 1 打造完整电商平台:为什么用 Django 做电商?
后端·python·django