我正在尝试为我的Django REST API设置OAuth2身份验证系统(使用DjangoRestFramework和Django-Oauth-Toolkit(。我根据官方文档编写了所有内容,但系统给出错误"无法导入ext.rest_framework">
这是我 setting.py 文件:
OAUTH2_PROVIDER = {
# this is the list of available scopes
'SCOPES': {'read': 'Read scope', 'write': 'Write scope', 'groups': 'Access to your groups'}
}
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': [
'oauth2_provider.ext.rest_framework.OAuth2Authentication',
],
'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.IsAuthenticated',),
'PAGE_SIZE': 10
}
谢谢!
好的,我检查了源代码以获取oauth2_provider
。显然他们改变了结构,但没有更新他们网站上的教程。因此,oauth2_provider.ext
包不再存在,则应改用oauth2_provider.contrib
。也就是说,以下代码工作正常:
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'oauth2_provider.contrib.rest_framework.OAuth2Authentication',
),
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
),
'PAGE_SIZE': 10
}