解决:禁止访问 (403) CSRF验证失败
在测试Django框架POST请求方式时,程序报错如下
在确保访问安全的情况下有一下两种方式:
1、在相应html文件form代码块中添加如下代码:
<form method="post" action="/method_show/">{% csrf_token %} <!-- 改行代码为添加部分 --><input type="submit" value="post方式">
</form>
但是仅仅添加这句代码,有时候并不能解决如上报错问题,至少在我测试过程中未能有效解决
那么就需要使用第二种方法
2、在相应view视图函数种添加如下代码:
# 首先在应用views.py文件中导入该方法
from django.views.decorators.csrf import csrf_exempt# 在视图函数位置添加该装饰器
@csrf_exempt
def method_show(request):return HttpResponse(request.method)
此时可将方法1中添加的方法注释(不注释也行)
由此变解决了代码报错问题
3、非安全方式
如下将csrf中间件代码块注释掉,也可解决上述报错问题,但是该方法不安全
MIDDLEWARE = ['django.middleware.security.SecurityMiddleware','django.contrib.sessions.middleware.SessionMiddleware','django.middleware.common.CommonMiddleware',# 'django.middleware.csrf.CsrfViewMiddleware', # 将改行注释掉 不使用即可'django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware',
]
解决:禁止访问 (403) CSRF验证失败相关推荐
- python_django(禁止访问 (403) CSRF验证失败. 请求被中断)
禁止访问 403 错误 原因 解决方法: 错误 Forbidden (403) CSRF verification failed. Request aborted.禁止访问 (403) CSRF验证失 ...
- 禁止访问 (403)CSRF验证失败. 请求被中断.
出现这个问题是因为django在收到表单提交过来的信息时,会检查提交过来的信息中是否有token,并会对token进行校验,如果校验通过,那就继续执行,反之就会认定这次的数据有伪造的风险. 解决方案: ...
- 禁止访问 (403) CSRF验证失败. 请求被中断.————错误处理(测试接口时遇到的问题)
问题描述 解决措施 在Header参数中添加Content-Type和X-CSRFToken信息,这样就不会报错了. 运行结果
- django ajax请求 csrf验证失败
如何解决django ajax请求 csrf验证失败的问题: 原文链接:http://stackoverflow.com/questions/5100539/django-csrf-check-fai ...
- java报错 csrf_Django项目报错: 禁止访问(403),CSRF验证失败,相应中断
如果想要取消表单的CSRF防护,可以在模板上删除{% csrf_token %}, 并且在相应的视图函数中添加装饰器@csrf_exempt, 代码如下: from django.views.deco ...
- Django项目报错: 禁止访问(403),CSRF验证失败,相应中断
如果想要取消表单的CSRF防护,可以在模板上删除{% csrf_token %}, 并且在相应的视图函数中添加装饰器@csrf_exempt, 代码如下: from django.views.deco ...
- Django项目出现: 禁止访问(403),CSRF验证失败,相应中断
CSRF验证失败,相应中断 错误信息为: 查看错误信息,不难发现,我们在上面问题中有一个{% csrf_token %},这是一个网络漏洞,在所有表单提交中,都需要添加并且必须放在format的后面 ...
- 禁止(403)CSRF验证失败请求中止即使使用{%csrf_token%}
如何解决禁止(403)CSRF验证失败请求中止即使使用{%csrf_token%}? 要使csrf保护起作用,需要做一些事情(请查看docs): 你的浏览器必须接受服务器中的Cookie 确保已将' ...
- Django中ajax发送post请求,报403错误CSRF验证失败解决办法
今天学习Django框架,用ajax向后台发送post请求,直接报了403错误,说CSRF验证失败:先前用模板的话都是在里面加一个 {% csrf_token %} 就直接搞定了CSRF的问题了:很显 ...
最新文章
- 2022-2028年中国服装电商行业发展战略规划及投资方向研究报告
- nginx做方向代理不显示图片的问题
- signavio-core-components ant build-all-in-one-war failed
- linux shell 算术运算{expr、bc、dc、(( ))和[ ]}
- 循环神经网络(RNN, Recurrent Neural Networks)——无非引入了环,解决时间序列问题...
- Java中Date及Timestamp时间相关内容【转】
- 知识图谱基础知识(一): 概念和构建
- 【EPS精品教程】基于DOM和DSM创建垂直模型、加载垂直模型
- 基于(7, 5)归零非删余Turbo码的参数识别与分析
- 计算机PMA,PMA通信协议分析及仿真工具
- linux单独安装oracle客户端及exp/imp工具配置
- OAuth 授权timestamp refused问题
- Java1.5并发包下阻塞队列的生产者与消费者功能简单实现
- function 自定义函数、函数调用
- Visual Basic .NET中操作MsAgent
- 计量经济学计算机答案第三章课后答案,庞皓计量经济学第2版课后习题答案
- 2019各个省会城市全新DNS大全一
- android自动修音,唱吧自动一键修音软件-唱吧自动修音app8.8.6 安卓手机版-东坡下载...
- Chromium网页CPU光栅化原理分析
- 高通平台Android 蓝牙调试和配置手册-- Pairing Failure
热门文章
- libGDX学习之路01(续):把libGDX项目部署到iOS
- 2021年安全生产模拟考试(全国特种作业操作证电工作业-高压电工模拟考试题库二)
- VGG (Visual Geometry Group)
- 什么是云密码?密信云密码服务产品提供什么?
- vb.net 窗体接收键盘事件_不用100就能够买到全键盘的无线键鼠套装,双飞燕FG1010魅力依旧...
- Android 之路20---Java基础14
- linux 挂载新硬盘
- Swiper + 图片懒加载
- 1命名规则 sentinel_哨兵-1A数据命名规则
- 售前工程师——PaaS