imooc慕课 PHP第三方登录—OAuth2.0协议 笔记
一、开场 会了解的地方
什么是OAuth
OAuth的应用场景
工作原理
三个重要步骤
第三方登录
获取Request Token
获取Access Token
后续API访问
Refresh Token 刷新Access Token
二、OAuth协议简介
OAuth (Open Authorization)
OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的
三、用图来说明
ps:用户访问第三方应用,第三方请求OAuth的登录页面,这时用户在登录页输入帐号密码,第三方获取不到。登录成功后OAuth返回给第三方登录结果,第三方通过令牌方式与OAuth交互,第三方切换用户登录状态,以及对用户的做其他操作。
四、OAuth协议 版本
1.0发布于2007末
2.0发布于2010初
五、OAuth应用场景
QQ用户授权梧桐树下使用其QQ帐号相关的信息
获取授权后,在符合权限规则的情况下访问各种API
六、三个重要步骤
七、请求OAuth登录页
Request Token URL - 未授权的令牌请求服务地址
梧桐树下请求QQ登录页面使用的带有特定参数的URL
https://graph.qq.com/oauth/show?which=Login&display=pc&response_type=code&client_id=310405864&redirect_uri=http%3A%2F%2Fwww.wtsxia.com%2Fconnect.php%3Fmod%3Dlogin%26op%3Dcallback%26referer%3Dindex.php
八、用户使用QQ号登录并授权
九、返回登录结果
User Authorization URL - 用户授权的令牌请求服务地址 用户QQ登录授权之后需要请求的一个带有特定参数的URL
AccessToken - 用户通过第三方应用访问OAuth接口的令牌
比如 通过梧桐树下把自己喜欢的帖子分享到QQ空间
十、AccessToken与RefreshToken
AccessToken - 具有较长生命周期(十天半个月甚至更长 ps:去看各文档所提供的说明)
RefreshToken 在 User Authorization URL 中指定参数
比如 ...&need_refresh_token=true&...
ps:RefreshToken 每个平台的取名可能不太 一样