接入QQ登录

注意事项:所有涉及回调地址的地方都需要进行encodeURI!!
参数说明:
client_id:创建应用的app_id
redirect_uri:回调地址,需要encodeURI
state:自定义参数,防止请求篡改

1、index页面引入js

 <script type="text/javascript" src="http://qzonestyle.gtimg.cn/qzone/openapi/qc_loader.js" data-callback="true"
          data-appid="APPID" data-redirecturi="回调地址" charset="utf-8">
  </script>

2、请求一下链接获取code

https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=APPID&redirect_uri=回调地址&state=state

3、获取access_token

https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id=APPID&client_secret=APP_SECRET&code=前一步骤获取的code&redirect_uri=回调地址

返回数据:access_token=2AFE1BE9F3C5DA0EC3AEE133A5C53231&expires_in=7776000&refresh_token=8F57FB45B688CBD3533495B37F3F13A0

4、根据token获取openid

https://graph.qq.com/oauth2.0/me?access_token=2AFE1BE9F3C5DA0EC3AEE133A5C53231

返回数据:

{
    "client_id": "APPID",
    "openid": "E171A0254A8589A5EAB1A73D22430320"
}

5、根据openid获取用户信息

https://graph.qq.com/user/get_user_info?access_token=2AFE1BE9F3C5DA0EC3AEE133A5C53231&oauth_consumer_key=APPID&openid=E171A0254A8589A5EAB1A73D22430320

返回数据:

{
    "ret": 0,
    "msg": "",
    "is_lost": 0,
    "nickname": "aaa",
    "gender": "男",
    "gender_type": 2,
    "province": "",
    "city": "",
    "year": "0",
    "constellation": "",
    "figureurl": "http://qzapp.qlogo.cn/qzapp/101941012/E171A0254A858905EAB1A73D22430320/30",
    "figureurl_1": "http://qzapp.qlogo.cn/qzapp/101941012/E171A0254A858905EAB1A73D22430320/50",
    "figureurl_2": "http://qzapp.qlogo.cn/qzapp/101941012/E171A0254A858905EAB1A73D22430320/100",
    "figureurl_qq_1": "http://thirdqq.qlogo.cn/g?b=oidb&k=EJ6UY25nfh1QSvJic6cI1Nw&s=40&t=1615018026",
    "figureurl_qq_2": "http://thirdqq.qlogo.cn/g?b=oidb&k=EJ6UY25nfh1QSvJic6cI1Nw&s=100&t=1615018026",
    "figureurl_qq": "http://thirdqq.qlogo.cn/g?b=oidb&k=EJ6UY25nfh1QSvJic6cI1Nw&s=100&t=1615018026",
    "figureurl_type": "0",
    "is_yellow_vip": "0",
    "vip": "0",
    "yellow_vip_level": "0",
    "level": "0",
    "is_yellow_year_vip": "0"
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值