【Django】如何在类视图、普通视图单独不做CSRF校验

一、背景

在某些特定场合下,需要局部禁用CSRF校验,比如,期望整个项目都启用CSRF,但是中途遇到某一两个视图要去掉这个校验

二、方案

1、如果你写Django的路由用的类视图,那么需要这样写

在 urls.py 文件

1 from django.views.decorators.csrf import csrf_exempt
2 
3 urlpatterns = [
4     path('upload/lay/', csrf_exempt(views.UploadLayView.as_view()), name='upload_lay'),  # 路由_上传文件
5 ]

2、如果你用的是普通视图(就是函数视图)

在 views.py 文件,在视图添加一个装饰器即可

1 from django.views.decorators.csrf import csrf_exempt
2 
3 @csrf_exempt
4 def MyView(request):
5     return
原文地址:https://www.cnblogs.com/yebaofang/p/13879825.html