QQ受权登陆

原文: QQ受权登陆

QQ受权登录过程总结:php

第一步:获取Authorization Codehtml

请求地址:https://graph.qq.com/oauth2.0/authorize?ios

参数列表:api

response_type true 受权类型,此值固定为“code”。
client_id true 申请QQ登陆成功后,分配给应用的appid。
redirect_uri true 成功受权后的回调地址,必须是注册appid时填写的主域名下的地址,建议设置为网站首页或网站的用户中心。注意须要将url进行URLEncode。
state true client端的状态值。用于第三方应用防止CSRF攻击,成功受权后回调时会原样带回。
scope opt 可填写的值是API文档中列出的接口,以及一些动做型的受权(目前仅有:do_like),若是要填写多个接口名称,请用逗号隔开。

例如:scope=get_user_info,list_album,upload_pic,do_like安全

不传则默认请求对接口get_user_info进行受权。app

display true 固定值 "mobile"

演示:https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=101181432&redirect_uri=http%3A%2F%2Fios.18idc.ml%2Ftest.html&state=test&display=mobile测试

注意:这里的redirect_uri不是随便填的在注册时直接填写域名ex:baidu.com,用的时候http://www.baidu.com/**.**   后边的***  是某个文件这个 你本身看着办。网站

返回:这个你点这个连接受权后会有返回,注意记住其中的code的值;url

第二步:经过Authorization Code获取Access Tokenspa

地址:https://graph.qq.com/oauth2.0/token?

参数列表:

grant_type true 受权类型,在本步骤中,此值为“authorization_code”。
client_id true 申请QQ登陆成功后,分配给网站的appid。
client_secret true 申请QQ登陆成功后,分配给网站的appkey。
code true 上一步返回的authorization code。

 

若是用户成功登陆并受权,则会跳转到指定的回调地址,并在URL中带上Authorization Code。

例如,回调地址为www.qq.com/my.php,则跳转到:

http://www.qq.com/my.php?code=520DD95263C1CFEA087******

注意此code会在10分钟内过时。

redirect_uri true 与上面一步中传入的redirect_uri保持一致。

演示:https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id=****&client_secret=********&code=*******&redirect_uri=http%3A%2F%2Fios.18idc.ml%2Ftest.html

返回:接下来的不会有演示了,这个牵扯到安全问题了,要想测试请自行申请,大家用的时候确定不会成功code早过时了,请替换参数,返回的结果包含:access_token=******&expires_in=****&refresh_token=***

access_token 受权令牌,Access_Token。
expires_in 该access token的有效期,单位为秒。
refresh_token 在受权自动续期步骤中,获取新的Access_Token时须要提供的参数。

第三步:根据access_token获取OpenID

地址:https://graph.qq.com/oauth2.0/me?

参数列表:

access_token true 在Step1中获取到的access token。

演示:这个不太好

第四步:获取用户信息

地址:https://graph.qq.com/user/get_user_info?

实例:

https://graph.qq.com/user/get_user_info?access_token=*************&oauth_consumer_key=12345&openid=****************

参数:access_token这个不说你们也知道,oauth_consumer_key这个实际上是  appid 呵呵  是否是有点坑openID上一步获取的。

完整文档参考地址:请点击

交流请加群:151180718

相关文章
相关标签/搜索