欢迎光临
我的个人博客网站

Django中关于“CSRF verification failed. Request aborted”的问题

遇到该问题的情境:在Django中采用Ajax提交表单,涉及到跨域问题。

Django中关于“CSRF verification failed. Request aborted”的问题

解决措施:

  1. 在html页面中的表单内添加如下代码:
{% csrf_token %} 
  1. 在视图函数所在的py文件中添加如下代码:
from django.views.decorators.csrf import csrf_exempt  # 如果是FBV,则在接收表单数据的视图函数上添加@csrf_exempt @csrf_exempt def func():     pass  # 如果是CBV,则在类上或者类方法上加方法装饰器 # 方法一如下,装饰器name参数指明要装饰的函数名称 @method_decorator(csrf_exempt, name="dispatch") class ClassView(View):       def post(self, request, *args, **kwargs):             pass  # 方法二如下,直接装饰dispatch方法 class ClassView(View):       @method_decorator(csrf_exempt)       def dispatch(self, request, *args, **kwargs):             return super(StudentsView, self).dispatch(request, *args, **kwargs)              def post(self, request, *args, **kwargs):             pass 

在Django中,可以使用 @csrf_exempt 注解来标识一个视图可以免除csrf验证。

该方法原文解释如下:
Mark a view function as being exempt from the CSRF view protection.


赞(0) 打赏
未经允许不得转载:张拓的天空 » Django中关于“CSRF verification failed. Request aborted”的问题
分享到: 更多 (0)

评论 抢沙发

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

专业的IT技术经验分享 更专业 更方便

联系我们本站主机

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏