【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(...): ...
相关推荐
AI逐月6 小时前
tmux 常用命令总结:从入门到稳定使用的一篇实战博客
linux·服务器·ssh·php
想逃离铁厂的老铁6 小时前
Day55 >> 并查集理论基础 + 107、寻找存在的路线
java·服务器
舰长1157 小时前
linux 实现文件共享的实现方式比较
linux·服务器·网络
路由侠内网穿透.7 小时前
本地部署智能家居集成解决方案 ESPHome 并实现外部访问( Linux 版本)
linux·运维·服务器·网络协议·智能家居
树℡独7 小时前
ns-3仿真之应用层(三)
运维·服务器·ns3
VekiSon7 小时前
Linux内核驱动——基础概念与开发环境搭建
linux·运维·服务器·c语言·arm开发
skywalk81638 小时前
尝试在openi启智社区的dcu环境安装ollama最新版0.15.2(失败)
linux·运维·服务器·ollama
看我干嘛!8 小时前
第三次python作业
服务器·数据库·python
Andy Dennis9 小时前
FTP局域网功能小网站V2_2
服务器·flask·html5
我材不敲代码9 小时前
在Linux系统上安装MySQL
linux·运维·服务器