Oauth授权流程

我们经常会使用第三方的账号来登录某个平台,比如使用QQ账号登录爱奇艺,使用微博登录自如APP。而登录的过程中,会提示自如想访问你的微博公开资料、好友信息,或者爱奇艺要访问您QQ头像、照片等资料。那么这个过程是有一个比较复杂的授权流程,在IoT云业务测试过程中,也会有这种场景的授权流程。下面我就通过图例结合业务场景和大家介绍下oauth授权流程。


举栗


如下图,是在使用微信登录自如APP时,自如APP要求访问用户的微信公开资料。其实就是自如想获取微信的相关接口,去访问用户的微信信息。那点击确认时这个过程,就是oauth的授权流程。有了这个概念,下面我通过一个流程图来介绍下整个流程的主要几点。




oauth授权流程



  1. 用户使用微信登录自如APP

  2. 自如APP向用户申请访问用户的个人微信资料

  3. 用户点击同意(代表用户同意自如访问他的微信信息)

  4. 用户点击同意时,自如会携带一个回调地址,去微信服务器申请获取code

  5. 微信返回一个code给自如

  6. 自如携带code和回调地址,再次想微信请求获取access_token

  7. 微信将access_token返回给自如

  8. 自如以后就会通过这个access_token,去访问用户的微信资料


划重点


  1. code是有时效性的,尽量在获取后的几分钟内去申请获取access_token

  2. access_token也是有过期时间的,而过期后就需要重新获取新的令牌


业务场景


在我们的业务中,会对接一些第三方的设备,以达到访问并控制第三方设备的能力。这个时候用户要想通过自家云去访问或者控制第三方云下面的设备,就需要在登录时,获取oauth授权。这里的自家云就相当于上面流程图中的自如,而第三方云相当于上面流程图中的微信,授权流程基本一致。



结束语:自己是在业务测试中,接触到这种场景,才逐渐的对这种授权流程熟悉。我们经常会遇到这种通过第三方登录某个网站或者APP,现在大家应该对这个授权流程有一些了解。如果想要知道更深的细节,可以去了解下oauth认证原理。

哈喽,喜欢这篇文章的话烦请点个赞哦!万分感谢(^▽^)PS:有问题可以联系我们哦v ceshiren001

复制“下方链接”,提升测试核心竞争力!
更多技术文章分享和免费资料领取

你可能感兴趣的:(微信)