---恢复内容开始---


理清思路

1、在第三方注册成为开发者,拿到第三方给的client_id(app_id---就像你的身份证、QQ号)和client_secret(就像你的QQ密码);

2、填写好redirect_url(回调地址----用于用户登录成功后回到的页面地址);

3、写代码

  1. 当用户点击了第三方登录的按钮,出发事件;
  2. 把页面跳转到第三方登录页面;
  3. 第三方登录页面的URL一般由app_id和回调地址等参数构成,具体参见第三方开发文档,照着文档拼接URL页面;
  4. 用户要是登陆成功了,页面会跳回到你在第三方填写好的回调地址,并且你的回调地址后面会有第三方加密后送过来的code参数(型如code=xxxxx);
  5. 获取上个步骤获得的code参数;
  6. 至此,用户完成登录,但我们还是无法使用用户信息,需要用户授权;
  7. 若用户同意授权;
  8. 后台访问一个URL地址,URL地址中包含client_secret参数和code的参数(第三方服务器需验证);
  9. 第三方服务器验证所需参数,若验证通过,则返回响应数据给我们,一般是XML和JSON数组,从中我们可以得到用户的基本信息,其中也包括Accesstoken(能够得到用户基本资料的令牌),归我们用于调用相关API;

4、注:若在获取accesstoken的url地址中,我们添加了一个布尔参数,类似于-----&need_refresh_token=ture;则我们得到的响应数据中还会有refresh_token;

    我们可以在当accesstoken失效,而用户又没有重新登陆时,用来后台自动重新到url请求新的accesstoken。

    例如:连续几个月在用户的空间里自动发说说(用户不经常登录)

转载于:https://www.cnblogs.com/JJ-kelion/p/5149603.html

第三方登录过程—OAuth2.0协议相关推荐

  1. php对接AliGenie天猫精灵服务器控制智能硬件esp8266② 全面认识第三方授权机制 oauth2.0 协议,如何在 php 上搭建 oauth2.0服务端!(附带demo)

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1. php对接AliGenie天猫精灵服务器控制智能硬件esp82 ...

  2. android sina oauth2.0 code认证,Android通过第三方登录理解oauth2.0机制

    1. OAuth2.0介绍 说到第三方登录,离不开oauth2.0,oauth2.0是"用户认证和授权的标准",是从oauth1.0基础上发展来的.下图是oauth2.0六个过程分 ...

  3. 腾讯QQ第三方登录2:原理与实现(OAuth2.0协议)

    这一篇博客上接腾讯QQ第三方登录1:申请接入(OAuth2.0协议) 3. 执行过程 3.1 第三方登录图标的代码 <a href="<{:U('Login/login?type ...

  4. OAuth2.0协议入门(一):OAuth2.0协议的基本概念以及使用授权码模式(authorization code)实现百度账号登录

    一 OAuth2.0协议的基本概念 (1)OAuth2.0协议 OAuth协议,是一种授权协议,不涉及具体的代码,只是表示一种约定的流程和规范.OAuth协议一般用于用户决定是否把自己在某个服务商上面 ...

  5. 接口测试工具-Jmeter使用笔记(八:模拟OAuth2.0协议简化模式的请求)

    背景 博主的主要工作是测试API,目前已经用Jmeter+Jenkins实现了项目中的接口自动化测试流程.但是马上要接手的项目,API应用的是OAuth2.0协议授权,并且采用的是简化模式(impli ...

  6. 微信开放平台开发——网页微信扫码登录(OAuth2.0)

    1.OAuth2.0 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用. 允许用户提供 ...

  7. OAuth2.0协议(一) - 授权码许可流程

    OAuth2.0是什么可以拿来做什么,它只认真的做了一件事授权(Authorization).OAuth2.0是 Open Authorization 2.0的简称,既然是2.0那前面肯定有个1.0. ...

  8. 互联网API开放平台安全设计-基于OAuth2.0协议方式

    基于OAuth2.0协议方式 什么是OAuth OAuth: OAuth(开放授权)是一个开放标准,允许用户授权第三方网站访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方网站 ...

  9. Spring Cloud云架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)

    上一篇我根据框架中OAuth2.0的使用总结,画了SSO单点登录之OAuth2.0 登出流程,今天我们看一下根据用户token获取yoghurt信息的流程: /** * 根据token获取用户信息 * ...

最新文章

  1. Exchange对AD的访问
  2. Python中’__main__’模块的作用
  3. 聚簇索引与非聚簇索引学习总结
  4. mxnet基础到提高(7)--卷积神经网络基础(2)
  5. Cocos2dx 中 倒计时保留2位数写法
  6. leetcode majority number
  7. JVM调优总结(六)-分代垃圾回收详述2
  8. 结构型模式 适配器模式
  9. REVERSE-PRACTICE-BUUCTF-24
  10. BugkuCTF-WEB题本地管理员
  11. 从源码角度看Spark on yarn client cluster模式的本质区别
  12. 哈斯(Hasse)图
  13. Jetbrain系列IDE设置
  14. 做游戏,学编程(C语言) 16 神奇小妖怪
  15. android动态生成背景透明带文字的图片
  16. 如何把 Google adsense 的广告放到博客的Banner位置
  17. 中国计算机学会推荐国际学术会议和期刊目录
  18. nema0183 java解析_NEMA-0183(GPRMC GPGGA)详细解释
  19. linux 如何看图软件,深度看图(linux看图软件) v1.2 官方最新版
  20. Python之函数传参

热门文章

  1. python四十八:多态
  2. Linux基金会宣布将为GraphQL成立基金会
  3. RHEL6基础之三RHEL官网获取ISO镜像
  4. 我们来谈谈那些智能家居里的语音对话设备
  5. Linux socket本地进程间通信之UDP
  6. 获取汉字拼音的简便方法
  7. ATT将在伦敦建设第二个数据中心
  8. Android教程之实现动作感应技术
  9. 话里话外:信息化仅仅是信息化
  10. 软件设计是决定软件性能的关键