描述: 项目settings.py中设置全局权限验证, 如下:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'api.apps.ApiConfig',
'rest_framework',
]
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': ['api.Authenticate1', 'api.MyAuthenticate2'],
"UNAUTHENTICATED_USER": None, # request.user = None
"UNAUTHENTICATED_TOKEN": None, # request.auth = None
}
异常: API setting 'DEFAULT_AUTHENTICATION_CLASSES'. ImportError: cannot import name 'APIView'.
解决: 在 Authenticate类中删去 from rest_framework.views import APIView
本文介绍在Django项目中如何设置全局权限验证,通过在settings.py文件中配置REST_FRAMEWORK参数实现。并解决了APIsetting 'DEFAULT_AUTHENTICATION_CLASSES'导入错误的问题,即从Authenticate类中删除了对APIView的引用。
638





