python安卓qq登录_python 前后端不分离 QQ登录,微博登录

# QQ登录和用户中心

# QQ 登录

##### 点了QQ 按钮--京东后台--->login_qq_url--->用户,账号扫码---->京东商城--->code---->qq---token--->qqopenid

* 1. 开发账号----- 所有第三方的东西 一概公司的

2. 创建应用--appid---appkey

3. pip install QQLoginTool

3. 点击QQ 按钮--v-on/@click="qq_login"-->京东商城后台

4. 京东商城后台---->认证QQ----->登录地址--qq_login_url

## 1.实例化 # 2.获取 QQ登录网址 # 3.返回给前端 QQ_url

5. 用户,账号扫码---->回调---京东商城后台----code

6. code ----->qq----token

7. Token---->qq--- openid

8. 是否绑定 openid 和我们自己的用户--绑定过----首页

# 1.去表 查询 openid 是否存在

# 加密 openid

# 2.不存在---绑定页面显示

# 存在-- 保持登录状态-首页

# 保持登录状态

9. 没有绑定过---绑定页面----绑定--->首页

1. 接收参数-- mobile pwd sms_code openid

2. 校验参数--手机号是否存在---密码--是否正确---图形验证码---短信验证码

3. openid+user绑定 # 解密 前端 传入openid 在拿openid查询user

1. user以前存在---绑定

2. 新用user--默认创建一个用户--绑定    #3.判断user是否存在  不存在 新建一个  else if not user.check_password(pwd)  # 4. 不管存在不存在 都绑定openid

4. 保持登录状态 login

5. 重定到首页

6. 设置cookie

##### 2. 加解密

* 1. ```python

pip install itsdangerous

```

2. 导包

3. 实例化

4. 加密 dumps

5. 解密loads

微博其实实现方法差不多

第三方发起微博授权登录请求,微博用户允许授权第三方应用后,微博会拉起应用或重定向到第三方网站,并且带上授权临时票据code参数;

通过code参数加上AppID和AppSecret等,通过API换取access_token;

通过access_token进行接口调用,获取用户基本数据资源或帮助用户实现基本操作。

获取uid判断用户是否绑定

微博sinaweibopy3模块使用说明

1.生成对象

导包

client = sinaweibopy3.APIClient(

# app_key: app_key值

app_key=settings.APP_KEY,

# app_secret:app_secret 值

app_secret=settings.APP_SECRET,

# redirect_uri : 回调地址

redirect_uri=settings.REDIRECT_URL

)

2.生成跳转的授权地址

login_url =client.get_authorize_url()

3.根据code值获取access_token和uid值

python

result = client.request_access_token(code)

access_token= result.access_token

uid=result.uid

微博模型类

from django.db import models

from utils.models import BaseModel

class OAuthSinaUser(BaseModel):

"""

Sina登录用户数据

"""

user = models.ForeignKey('users.User', on_delete=models.CASCADE, verbose_name='用户')

uid = models.CharField(max_length=64, verbose_name='access_token', db_index=True)

class Meta:

db_table = 'tb_oauth_sina'

verbose_name = 'sina登录用户数据'

verbose_name_plural = verbose_name

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值