• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

关于python:django中遇到错误Forbidden-CSRF-cookie-not-set

python 搞代码 3年前 (2022-02-20) 23次浏览 已收录 0个评论
CSRF cookie not set    

提醒就是说

未设置CSRF cookie

CSRF 是啥?

示意django全局发送post申请均须要字符串验证

性能: 避免跨站申请伪造的性能

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

拜访流程:客户端-》URL路由零碎 – 》 CSRF -》视图函数

我这里要写的是一个外部应用的api接口,也不大会有 跨站申请伪造

所以这里提供两个不是很举荐,然而非常简单的形式解决这个问题

既然不须要 CSRF 这里咱们就把CSRF检测关掉即可

解决办法1:

  1. 在你创立的我的项目中,找到settings.py文件
  2. 文件settings.py 找到 MIDDLEWARE参数
  3. 正文掉'django.middleware.csrf.CsrfViewMiddleware',即可

就像这样

解决办法2:

第二种办法和第一种差不多

下面是的正文掉django.middleware.csrf.CsrfViewMiddleware,这是一个全局的设置

其实咱们也能够对单个api 进行特地设置

这里 咱们应用 @csrf_exempt 来进行解决

@csrf_exempt 是用来勾销以后函数防跨站申请伪造性能

  1. views.py 文件,这是咱们解决api规定的
  2. 导入from django.views.decorators.csrf import csrf_exempt
  3. 咱们在对应的函数上加上@csrf_exempt

就像这样,是不是很简略

关注我获取更多内容
注:转载还请注明出处,谢谢^_^


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:关于python:django中遇到错误Forbidden-CSRF-cookie-not-set

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址