一、【全局crsf验证开启,但希望某函数或方法豁免验证】
1、基于FBV免除某个函数csrf验证的步骤:
1.1、在settings的中间件,添加csrf验证全局验证(默认都已经添加)
1.2、导入 django.views.decorators.csrf import csrf_exempt, csrf_protect
1.3、在需要免除csrf验证的函数上添加装饰器:@csrf_exempt
# 到 settings.py 文件开启csrf全局验证 # -------------> STEP、1
from django.views.decorators.csrf import csrf_exempt # -------------> STEP、2
from django.shortcuts import HttpResponse
import json
@csrf_exempt # -------------> STEP、3
def users(request):
user = ['u1','u2']
return HttpResponse(json.dumps(user))
2、基于CBV免除csrf验证的步骤:
2.1、在settings的中间件,添加csrf验证全局验证(默认都已经添加)
2.2、from django.utils.decorators import method_decorator
2.3、导入 from django.views.decorators.csrf import csrf_exempt, csrf_protect
2.4、在类的dispatch方法上添加装饰器:@method_decorator(csrf_exempt)
【方法一】
# 到 settings.py 文件开启csrf全局验证 # -------------> STEP、1
from django.uti