开发攻略

目录

阅读前提

本开发攻略适用于使用Implicit Grant方式获取Access Token的授权验证流程,适用于需要通过客户端访问的方式,例如需要通过浏览器的javascript代码,或者电脑/移动终端上的客户端访问时。

阅读本开发攻略前,请阅读使用Implicit Grant方式获取Access Token以了解认证流程。

快速上手

准备工作

1. 请确保您的移动应用已经提交接入QQ登录的申请,并成功获取到appid和appkey。申请接入
2. 请在你的服务器上ping openapi.qzone.qq.com ,保证移动应用和Qzone的连接畅通。

Step1:放置QQ登录按钮

移动应用需要使用腾讯方提供的“QQ登录”按钮图片,放置在页面合适的位置。

Step2:获取Access Token

1. 打开浏览器,访问如下地址(请将client_id,scope等参数值替换为你自己的):

https://graph.qq.com/oauth2.0/authorize?response_type=token&client_id=[YOUR_APPID]&redirect_uri=[YOUR_REDIRECT_URI]&scope=[THE_SCOPE]



2. 如果用户已经有登录态,会弹出提示一个确认页。如果还没有登录,会弹出登录页。
如果用户是第一次登录,在登录页面会引导用户授权,如下图所示:
mobile_access_summary_2.png

注意:
如果用户不允许,则访问操作将被中止。
建议第三方应用控制授权项,即参数值scope中只传入必须使用的OpenAPI名称。因为授权项越多,用户越有可能拒绝授权。

3. 如果用户允许授权,则成功跳转到指定的redirect_uri,并在URL后加“#”号,带上Access Token以及expires_in等参数。如果redirect_uri地址后已经有“#”号,则加“&”号,带上相应的返回参数。

特别提示
1. 建议用js设置cookie存储token。
2. 获取到的access token具有3个月有效期,用户再次登录时自动刷新。

Step3:使用Access Token来获取用户的OpenID

1. 发送请求到如下地址(请将access_token等参数值替换为你自己的):

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


2. 获取到用户OpenID,返回包如下:

callback( {"client_id":"YOUR_APPID","openid":"YOUR_OPENID"} ); 

Step4:使用Access Token以及OpenID来访问和修改用户数据

1. 建议移动应用在用户登录后,即调用get_simple_userinfo接口,获得该用户的头像、昵称并显示在应用上,使用户体验统一。
2. 调用其他OpenAPI,以访问和修改用户数据。所有OpenAPI详见API列表

以调用get_simple_userinfo接口为例:
(1)发送请求到get_simple_userinfo的URL(请将access_token,appid等参数值替换为你自己的):

https://graph.qq.com/user/get_simple_userinfo?access_token=YOUR_ACCESS_TOKEN&oauth_consumer_key=YOUR_APP_ID&openid=YOUR_OPENID



(2)成功返回后,即可获取到用户数据:

{

   "ret":0,
   "msg":"",
   "nickname":"YOUR_NICK_NAME",
   ...

}


以上信息是否解决您的问题?

Copyright © 1998 - 2019 Tencent. All Rights Reserved.

腾讯公司 版权所有

有问必答 返回顶部