QQ微信微博联合登录流程总结

简介: 微信联合登录

第三方联合登录一般可以降低网站的获客成本,所以一般的网站都会做一些联合登录,常用的就是QQ、微信、微博了,下面简单的介绍一下这些联合登录的方法。

一号店QQ联合登录链接

看了一号店的QQ登录源码可知,点击图标直接访问的是这个链接
https://passport.yhd.com/qq/login.do?tp=2.0.0.0.0.LWyye4h-10-C`toe&ti=H2H3VT
它首先请求的是自己网站的请求,后面那两个参数应该没用,大家自己项目可以不用加,不过抓包能看出来它在服务端做了一个重定向指向了腾讯的QQ授权登录页面
https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=100234077&redirect_uri=https://passport.yhd.com/qq/callback.do&scope=get_user_info&state=6172a6f6f311570fe739e96be57b6a67

这里根据QQ的联合登录文档就能知道重定向传递的参数都是干什么了。。文档

这里一号店只申请了昵称头像性别的权限,一般都会同意的。

接下来就是QQ的重定向了,QQ自己到了这个请求。
https://graph.qq.com/oauth/show?which=Login&display=pc&response_type=code&client_id=100234077&redirect_uri=https://passport.yhd.com/qq/callback.do&scope=get_user_info&state=6172a6f6f311570fe739e96be57b6a67

这里其实就能看出一号店希望用户在点击授权登录之后访问的链接,https://passport.yhd.com/qq/callback.do
但是当QQ回调你方法的时候就成了这样
https://passport.yhd.com/qq/callback.do?code=78DF205E46BFECE1D22D31FD77BFD925&state=8625864ecaa9b8424aa40a7e12b4cdb9

在这里QQ加上了一个code参数和state参数,code是用来获取token值的,只有10分钟有效期,state参数是让你校验你的请求有没有被篡改,如果被篡改,你得有相应的处理。在这个回调方法里,我们得按照QQ联合登录的文档用申请QQ登录所分发的appid和appkey来获取token,
文档

获取完token,你就得按文档再根据token去获取用户的openId

获取openId

得到了用户的openId之后,你就可以获取之前授权可以得到的用户信息了 其他用户信息接口文档

获取用户信息

当走到这里时,你已经得到了用户的openId和其他的用户信息,应为openId是唯一的,所以不可能重复,这时候整个联合登录就已经走完了。你可以根据openId给用户在你的站内创建一个账号,设置登录token,认为用户已经登录了。

QQ联合登录说的这么清楚了,其实微信联合登录也是这个套路,具体看文档调接口就可以了
微信联合登录
微信联合登录查询用户信息

如果你的微信开放平台下有多个应用,你可以用appid+unionid的形式来保证用户id的唯一性。

微博联合登录流程也大体差不多,详情请看微博联合登录文档

目录
相关文章
|
2月前
|
开发工具 数据安全/隐私保护 UED
Uniapp 微信登录流程解析
Uniapp 微信登录流程解析
47 0
|
3月前
|
存储 JavaScript 开发工具
uniapp-实现微信授权登录
uniapp-实现微信授权登录
650 0
|
3月前
|
存储 JSON JavaScript
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)-1
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)
63 0
|
3月前
|
小程序
内网环境中ruoyi若依实现微信小程序授权登录解决办法
内网环境中ruoyi若依实现微信小程序授权登录解决办法
165 0
|
3月前
|
数据安全/隐私保护
常用的表单校验规则——邮箱/QQ/身份证号码/微信/电话/数字字母/整数/文本/密码等
常用的表单校验规则——邮箱/QQ/身份证号码/微信/电话/数字字母/整数/文本/密码等
53 0
|
21天前
|
前端开发 NoSQL 数据库
设计 QQ、微信等第三方账号登陆
设计 QQ、微信等第三方账号登陆
17 0
设计 QQ、微信等第三方账号登陆
|
2月前
|
小程序 JavaScript
微信小程序授权登录?
微信小程序授权登录?
|
3月前
|
JSON 前端开发 安全
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)-2
前后端分离项目知识汇总(微信扫码登录,手机验证码登录,JWT)
54 0
|
3月前
|
小程序 数据安全/隐私保护
微信小程序实现一个简单的登录功能
微信小程序实现一个简单的登录功能
|
3月前
|
小程序
uniapp 微信小程序登录 新手专用 引入即可
uniapp 微信小程序登录 新手专用 引入即可
31 0