第三方登录之QQ登录(二)——OAuth2.0处理流程介绍(以QQ登录为例)

为了让网站更快接入,腾讯提供了JS SDK的接入方案,具体点击这里或者点击这里进行查看。

不过也可以自己写代码,当然你需要了解QQ的OAuth2.0的处理流程(Web Server Flow)。

OAuth2.0的处理流程:点击这里查看官方Wiki。

1.授权:获取授权码Authorization Code 

说明:第一步QQ必须得到要登录系统的授权信息,如果授权全成功,则会跳转到回调地址,同时授权码以参数形式,追加回调地址上。

当然还有一些其他参数,具体详情看官方介绍

 实例:
https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=101137684&redirect_uri=http%3a%2f%2fmfxuan.free.800m.net%2flogin.jsp&state=1&scope=get_user_info,get_info

返回:

http://mfxuan.free.800m.net/login.jsp?code=xxxx12BBB0345xxxxxx68196E5C2xxxx&state=1

2. 登录:通过Authorization Code获取Access Token

说明:获取网址中的code值,这个就是Authorization Code,通过它,可以获取访问令牌。这个访问令牌,事实上是给登录系统用的,主要是允许访问QQ的授权服务。(注意:不要向别人泄漏Access Token,因为它有3个月时效)

 详细请看官方介绍

实例:

https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id=101137684&client_secret=xxxxx24b9da14xxxxxc2997xxxxxxxxx&code=xxxx12BBB0345xxxxxx68196E5C2xxxx&redirect_uri=http%3a%2f%2fmfxuan.free.800m.net%2flogin.jsp

返回:

3. 获取用户openid

说明:先说一下openid,它是此网站上或应用中唯一对应用户身份的标识,与QQ号一一对应。网站或应用可将此ID进行存储,便于用户下次登录时辨识其身份,或将其与用户在网站上或应用中的原有账号进行绑定。有了它以后就可以确定当前登录的QQ,获取到QQ登录用户的基本信息了。(注意:不要向别人泄漏OpenID)

实例:

https://graph.qq.com/oauth2.0/me?access_token=11111111111111111111111111111111 

返回:

4. 调用OpenAPI获取各种信息

点击API列表。里面有每个API的使用说明。当然前提是你的应用或网站有这个api的授权信息才可以。点击“应用管理”中的“API管理”,可以看到所有已授权和未授权的API。

作为演示,我这里选择的是获取用户信息api:get_user_info

 

实例:

https://graph.qq.com/user/get_user_info?access_token=11111111111111111111111111111111&oauth_consumer_key=101137684&openid=333333333333333333333333333

返回

时间: 2024-10-26 07:33:36

第三方登录之QQ登录(二)——OAuth2.0处理流程介绍(以QQ登录为例)的相关文章

手机qq扫描二维码功能在哪 手机qq扫描二维码方法

在使用qq扫描二维码之前我们要保证我们的QQ是最新版本了QQ了,这样可以保证有扫描二维码的功能了. 第一步 我们在手机中安装QQ软件 第二步 打开QQ之后点击"消息",然后我们要扫描的功能是在"联系人",所以选择联系人. 第三步 然后我们点击"联系人"然后我们点击"添加"了吗?点击它! 第四步 然后我们点击"添加" 下面找到 "扫一扫"然后我们打开进入! 第五步 然后手机会有提示:&qu

首家QQ登录OAuth2.0 手机APP及PC端网站上线

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 热腾9月20日消息 第一家QQ登录OAuth2.0手机APP上线啦--蘑菇街iphone版支持QQ帐号登录!OAuth2.0应用实现了手机网站和手机APP的QQ登录功能,支持通过手机QQ账号登录第三方网站,并大大降低第三方网站的接入成本.目前还有一批手机网站/手机APP正在接入调试中,大家可以前往QQ登录OAuth2.0体验专区进行了解. 另

ASP.NET实现QQ、微信、新浪微博OAuth2.0授权登录[原创]_实用技巧

不管是腾讯还是新浪,查看他们的API,PHP都是有完整的接口,但对C#支持似乎都不是那么完善,都没有,腾讯是完全没有,新浪是提供第三方的,而且后期还不一定升级,NND,用第三方的动辄就一个类库,各种配置还必须按照他们约定的写,烦而且乱,索性自己写,后期的扩展也容易,看过接口后,开始以为很难,参考了几个源码之后发现也不是那么难,无非是GET或POST请求他们的接口获取返回值之类的,话不多说,这里只提供几个代码共参考,抛砖引玉了... 我这个写法的特点是,用到了Session,使用对象实例化之后调用

Android高效率编码-第三方SDK详解系列(二)——Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能

Android高效率编码-第三方SDK详解系列(二)--Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能 我的本意是第二篇写Mob的shareSDK分享组件的,奈何需要去注册各平台的账号,还要审核,有些审核还挺久,就没办法,改为写这个Bmob了,相信大家对Bmob都是挺期待的吧,因为他作为Android后端的实现很好的支持,国内很多软件都在使用它,他的功能也是特别神奇,这里就不一一细说了,我们用实际的例子来见证他的神奇 官网:http://w

Senparc.Weixin.MP SDK 微信公众平台开发教程(十二):OAuth2.0说明

原文:Senparc.Weixin.MP SDK 微信公众平台开发教程(十二):OAuth2.0说明 紧接上一篇<Senparc.Weixin.MP SDK 微信公众平台开发教程(十一):高级接口说明>,这里专讲OAuth2.0. 理解OAuth2.0 首先我们通过一张图片来了解一下OAuth2.0的运作模式: 从上图我们可以看到,整个过程进行了2次"握手",最终利用授权的AccessToken进行一系列的请求,相关的过程说明如下: A:由客户端向服务器发出验证请求,请求中

phpcms V9实现QQ登陆OAuth2.0

phpcmsV9使用的QQ登陆依然是OAuth1.0,但现在腾讯已经不审核使用OAuth1.0的网站了.这对于使用pc的站长来讲是一个无比巨大的坑.经过对phpcms论坛的一位同学做的插件进行修改,现在完美实现QQ登陆,暂无发现bug. 实现步骤: ①打开\phpcms\modules\member\index.php文件,把下面的代码找个地方塞进去(可以直接在pc默认的QQ登陆下面).   //QQ登陆oAuth2.0 ublic function public_qq_login2(){  

android应用程序支持第三方登录,但同时程序又有自己的用户系统(登录注册)时怎么办,

问题描述 android应用程序支持第三方登录,但同时程序又有自己的用户系统(登录注册)时怎么办, 那么用户异地三方登录时,该怎么操作,不能第三方的帐号直接操作把? 解决方案 第三方登录的时候创建一个本地账户和它关联起来.很多网站都是这么做的. 解决方案二: 几个账号同时登陆,一般的做法是: (1)后上线的将先上线的挤下线,这时下线的一方会被提示下线的原因 (2)同时在线,这时几个账号独立操作.就算是这几个账号是关联在一起的,只要在服务器端做好同步操作即可. 解决方案三: 你是想把不同的登录方式

IBM Domino/Notes 9.0 新功能:Notes联邦登录的介绍及其部署使用

引言 对于希望部署并体验 Notes 联邦登录(Federate Login)的用户而言,首先需要知道并理解 Notes 联邦登录实际上是通过 SAML(安全性断言标记语言,Security Assertion Markup Language)来完成的单点登录(Single Sign On)功能,如果用户同时还能够理解"联邦身份",将对配置部署 Notes 联邦登录有很大的帮助,因为在配置部署过程中需要完成一个步骤来实现联邦身份.下文将先介绍 SAML 以及联邦身份,以此引导用户逐步进

access-Google第三方登陆,oauth2.0问题

问题描述 Google第三方登陆,oauth2.0问题 自己做了一个客户端,要求实现Google第三方登陆.我现在已经获取了access_token ,接下来该做什么呢? 好吧,我是不明白第三方登陆,登陆的到底是什么?第三方的账号密码? 解决方案 通过access_token调用第三方的api,实现第三方登陆.