此处咱们用到的是 social_django,所以要把此应用注册到配置文件中,
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
'corsheaders',
'social_django'
]
然后需要添加
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
'social_django.context_processors.backends',
'social_django.context_processors.login_redirect' ,
],
},
},
]
AUTHENTICATION_BACKENDS = [
'users.utils.UsernameMobileAuthBackend',
'social_core.backends.weibo.WeiboOAuth2', #微博
'social_core.backends.qq.QQOAuth2', #qq
'social_core.backends.weixin.WeixinOAuth2',#微信
'django.contrib.auth.backends.ModelBackend' #指定django的modelbackend 类
]
#第三方关联配置
SOCIAL_AUTH_WEIBO_KEY = ''
SOCIAL_AUTH_WEIBO_SECRET = ''
此处的key需要到微博开放平台注册。
# 登录成功后跳转页面
SOCIAL_AUTH_LOGIN_REDIRECT_URL = 'http://127.0.0.1:8080/index.html'
咱们可以在social_django源码urls.py文件中看到如下url路径:
因此咱们还需要在前端页面中加上指定微博登录的链接:
<a href="http://127.0.0.1:8000/login/weibo">微博</a>
如上,咱们就可以实现一个简单的微博第三方登录!