OAuth是Open Authorization的缩写,用于第三方的登录授权
- OAuth可以使得网站在不知道你的QQ、微信之类的第三方账户密码的情况下,完成第三方的登录授权
工作原理
三大步骤
1. 网站向OAuth请求OAuth登录页面
- 网站向OAuth发送Request Token URL(未授权的令牌请求服务地址),也就是说网站需要将带有特定参数的URL发送给OAuth。一般参数有client_id和redirect_uri
2.用户输入QQ号和密码
3.OAuth返回登录结果
- 在登录成功后,OAuth会回调url并返回一个加了密的code
- 网站获取到code之后,再向OAuth发送User Authorization URL (用户授权的令牌请求服务地址),主要是为了防止被其他人获取到了这个code。一般参数有client_id、client_secret和code(code会在很短的时间内过期 )。code在再次发送过去之后将会失效。
- 返回的数据中有AccessToken(用户通过第三方应用访问OAuth接口的令牌)
AccessToken
- 网站发送带有AccessToken参数的的特定url调用OAuth的API
其模型类似于
- AccessToken一般具有较长的生命周期(10天半个月...)