在网站接入QQ登陆时遇到不少麻烦,主要是QQ互联和腾讯开放平台的关系比较乱,不知道要从哪一个接入。api
最终解决方式:在腾讯开放平台注册我的开发者,验证经过后,在QQ互联平台会有腾讯开放平台的注册信息,而后依次点击 我的中心-》编辑-》提交审核 审核完毕后应该就能够经过分配的ID信息接入了。微信
(在最初QQ互联注册时,我的开发者老是须要提交营业执照,如今换了个qq号注册不须要了,多是第一次QQ互联注册时JS没切过来的缘由吧,应该是能够直接在QQ互联注册我的开发者的,不须要我这样绕路,(-。-;))app
经过了解QQ互联和腾讯开放平台的区别应该是这个:QQ互联主要是为了给第三方网站或移动应用提供登陆信息。而腾讯开发平台,则是为托管型的应用(平台应用和移动应用)提供服务的。不过如今QQ互联正在往腾讯开发平台上迁移。jsp
下面是网上看到的比较不错的入门教程:(原文:http://blog.csdn.net/xiaoxian8023)网站
主要分两部分:spa
-
1.注册QQ互联开发者
2.接入QQ登陆方法和接口使用方法.net
如今这种第三方登陆的应用很普遍也很方便。免得用户进行注册了。今天就来研究一下QQ登陆API的使用。
首先说一下,腾讯提供了许多个的开放平台。差很少每一个大的产品都提供了开放平台,好比微信、QQ邮箱,财付通等。这里面有2个比较易混的,一个是
QQ互联,一个是
腾讯开发平台。QQ互联主要是为了给第三方网站或移动应用提供登陆信息。而腾讯开发平台,则是为托管型的应用(平台应用和移动应用)提供服务的。不过如今QQ互联正在往腾讯开发平台上迁移。
第一步,注册成为开发者。
会让你选择一个QQ登陆,这个QQ就成为了开发者QQ号码了,并且不能更换。因此若是你是为公司作这个事儿,仍是使用公司的公共QQ吧。
QQ登进去之后,会跳转到开发者注册页面。注册页面须要提交公司或我的的基本资料。下图所示的是公司和我的的注册页面:
第二步,网站接入申请。
QQ登陆有必要的验证工做要作,首先提交申请,获取appid与appkey,这两个是一切操做的基础。因此必须先申请。
我这里以我的开发为例,开发者注册成功之后,会跳转到“管理中心”页面。点击“添加应用”,而后选择网站:
在弹出的对话框里,填写相应的信息:
网站地址输入框先填写你的网站首页,而后把鼠标移动到“验证”按钮上面,按照提示修改你的首页源码。修改完毕,点击“开始验证”,若是成功了,会提示“已经过验证”。
回调地址,就是登陆QQ以后,QQ给你返回值的接收页面,这个页面能够是一个单独的页面,也能够和登陆页面是一个。注意:回调地址不含http://等协议头。若是你有多个站点公用一个APPID,那么请点击回调地址下面的“帮助文档”查看,
飞机票。
网站注册完成,进入管理中心,在管理中心能够查看到网站获取的appid和appkey,以下图所示:
若是你想修改网站信息,能够在管理中心,点击申请的网站下的“编辑信息”进行修改。
申请完毕之后,接下来就是网站接入了。
其实我主要是用到了这里的QQ登陆受权。如何处理呢?咱们下篇继续。
为了让网站更快接入,腾讯提供了JS SDK的接入方案,具体点击这里或者点击这里进行查看。code
不过也能够本身写代码,固然你须要了解QQ的OAuth2.0的处理流程(Web Server Flow)。
OAuth2.0的处理流程:点击
这里查看官方Wiki。
1.受权:获取受权码Authorization Code
说明:第一步QQ必须获得要登陆系统的受权信息,若是受权全成功,则会跳转到回调地址,同时受权码以参数形式,追加回调地址上。
返回:
2. 登陆:经过Authorization Code获取Access Token
说明:获取网址中的code值,这个就是Authorization Code,经过它,能够获取访问令牌。这个访问令牌,事实上是给登陆系统用的,主要是容许访问QQ的受权服务。(注意:不要向别人泄漏Access Token,由于它有3个月时效)
实例:
返回:
3. 获取用户openid
说明:先说一下openid,它是此网站上或应用中惟一对应用户身份的标识,与QQ号一一对应。网站或应用可将此ID进行存储,便于用户下次登陆时辨识其身份,或将其与用户在网站上或应用中的原有帐号进行绑定。有了它之后就能够肯定当前登陆的QQ,获取到QQ登陆用户的基本信息了。(注意:不要向别人泄漏OpenID)
实例:
返回:
4. 调用OpenAPI获取各类信息
点击
API列表。里面有每一个API的使用说明。固然前提是你的应用或网站有这个api的受权信息才能够。点击“应用管理”中的“API管理”,能够看到全部已受权和未受权的API。
做为演示,我这里选择的是获取用户信息api:get_user_info
实例:
返回