码迷,mamicode.com
首页 > 移动开发 > 详细

Django开发social-auth-app-django 第三方登陆-魏泯

时间:2018-11-27 23:46:04      阅读:699      评论:0      收藏:0      [点我收藏+]

标签:bubuko   平台   创建   ica   ack   backend   red   setting   under   

在很多博友的博客中学习了social-auth-app-django这个模块。发现很多事情还是要自己操作之后才能得到经验。我这里做一些补充。

基于OAuth2:https://oauth.net/2/(官方网址)

技术分享图片

 

1. 使用social-auth-app-djang这个第三方包之前先安装::

pip install social-auth-app-django

2. 配置settings.py 文件:安装应用

INSTALLED_APPS = [
    ...
    social_django,
]

3. 配置mysql数据库连接就可以直接迁移。因为在social_django的源码中可以看到已经为我们生成好了迁移文件。

技术分享图片

4. 查看mysql(可选项),这钟情况是已经成功。多了几个social为我们创建的表。social美式音标:[?so??l]

技术分享图片

5. 重写Django的认证后端,添加配置信息字符串的本质是调用文件路径。

# 重写django的认证后端,需要配置
AUTHENTICATION_BACKENDS = [
social_core.backends.weibo.WeiboOAuth2,  # 新浪微博登陆
social_core.backends.amazon.amazonOAuth2‘,  # 亚马逊登陆

]

源码中的位置,以亚马逊为例,都是一样的路径规律。

 技术分享图片

6. 配置主路由urls.py

urlpatterns = [
    url(r^, include(social_django.urls)),
]

7. 设置模板引擎 settings.py

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,

                # 添加backends与登陆重定向模板
                social_django.context_processors.backends,
                social_django.context_processors.login_redirect,
            ],
        },
    },
]

8. 配置第三方所需要的常量

# 配置微博开放平台授权
# SOCIAL_AUTH_要使用登录模块的名称大小_KEY,其他如QQ相同
SOCIAL_AUTH_WEIBO_KEY = ‘这里填App Key
SOCIAL_AUTH_WEIBO_SECRET = ‘这里填App Secret

# 登录成功后跳转页面
SOCIAL_AUTH_LOGIN_REDIRECT_URL = 这里填登陆后跳转的URL,比如主页

9. 查看回调URL如何设置

回调URL的内部实现可以看一下源码,暂时不用更改。.\\social_django\urls.py

技术分享图片

配置回调URL,授权取消回调页填为空。

技术分享图片

 

10. 请求这个URL http://域名/login/使用模块名称/ 如 http://127.0.0.1:8000/login/weibo/

技术分享图片

技术分享图片

最后,查看表内容,有了新的内容。

技术分享图片

 

感谢博主@林贵秀,@lvye001;

 

Django开发social-auth-app-django 第三方登陆-魏泯

标签:bubuko   平台   创建   ica   ack   backend   red   setting   under   

原文地址:https://www.cnblogs.com/Asterism-2012/p/10029751.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!