网页授权获取用户基本信息
(以“如果用户在微博中(Web微信除外)访问开发者的第三方网页,开发者可以通过此接口获取当前用户基本信息(包括昵称、性别...”为内容创建页面) |
|||
第4行: | 第4行: | ||
本接口是通过OAuth2.0来完成网页授权的,是安全可靠的,关于OAuth2.0的详细介绍,可以参考OAuth2.0协议标准。在微信公众号请求用户网页授权之前,开发者需要先到公众平台网站的我的服务页中配置授权回调域名。请注意,这里填写的域名不要加http:// | 本接口是通过OAuth2.0来完成网页授权的,是安全可靠的,关于OAuth2.0的详细介绍,可以参考OAuth2.0协议标准。在微信公众号请求用户网页授权之前,开发者需要先到公众平台网站的我的服务页中配置授权回调域名。请注意,这里填写的域名不要加http:// | ||
+ | |||
+ | |||
+ | ===不弹出授权页面的快速授权流程=== | ||
+ | 在粉丝服务平台中,用户跳转到第三方H5页面后,很多时候第三方仅仅想获取到用户的uid信息,并且不希望弹出授权页面从而提高转化率;在这种情况下,第三方可以使用不弹出授权页面的快速授权流程: | ||
+ | 使用应用授权作用域,snsapi_base ; | ||
+ | |||
+ | 1. 使用snsapi_base(不弹出授权页面,直接跳转,只能获取用户uid)这个scope来引导需要授权的用户到如下地址 | ||
+ | <pre> | ||
+ | https://api.weibo.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&scope=snsapi_base | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | 2. 如果用户同意授权,页面跳转至 YOUR_REGISTERED_REDIRECT_URI/?code=CODE | ||
+ | |||
+ | |||
+ | 3. 换取Access Token | ||
+ | 开发者请注意,这里通过code换取的网页授权access_token,与 [[Messages_api_start|申请消息接口]] 中“第三步:成为开发者,获取access_token”中的access_token是不同的; | ||
+ | 第三方可通过下述接口来获取网页授权access_token。但是如果scope=snsapi_base,则本步骤中获取到网页授权access_token的同时,也获取到了uid,snsapi_base式的网页授权流程即到此为止。 | ||
+ | |||
+ | <pre> | ||
+ | https://api.weibo.com/oauth2/access_token?client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorization_code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&code=CODE | ||
+ | </pre> | ||
+ | (其中client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET可以使用basic方式加入header中) | ||
+ | |||
+ | 正确时返回JSON数据包如下: | ||
+ | |||
+ | <pre> | ||
+ | { | ||
+ | "access_token":"ACCESS_TOKEN", | ||
+ | "remind_in":3600, | ||
+ | "expires_in":3600, | ||
+ | "uid":"UID", | ||
+ | "scope":"snsapi_base" | ||
+ | } | ||
+ | </pre> |
2014年5月14日 (三) 09:50的版本
如果用户在微博中(Web微信除外)访问开发者的第三方网页,开发者可以通过此接口获取当前用户基本信息(包括昵称、性别、城市、国家)。利用用户信息,可以实现体验优化、用户来源统计、帐号绑定、用户身份鉴权等功能。 请注意,“获取用户基本信息接口是在用户和公众号产生消息交互时,才能根据用户OpenID获取用户基本信息,而网页授权的方式获取用户基本信息,则无需消息交互,只是用户进入到公众号的网页,就可弹出请求用户授权的界面,用户授权后,就可获得其基本信息(此过程甚至不需要用户已经关注公众号。)”
本接口是通过OAuth2.0来完成网页授权的,是安全可靠的,关于OAuth2.0的详细介绍,可以参考OAuth2.0协议标准。在微信公众号请求用户网页授权之前,开发者需要先到公众平台网站的我的服务页中配置授权回调域名。请注意,这里填写的域名不要加http://
不弹出授权页面的快速授权流程
在粉丝服务平台中,用户跳转到第三方H5页面后,很多时候第三方仅仅想获取到用户的uid信息,并且不希望弹出授权页面从而提高转化率;在这种情况下,第三方可以使用不弹出授权页面的快速授权流程: 使用应用授权作用域,snsapi_base ;
1. 使用snsapi_base(不弹出授权页面,直接跳转,只能获取用户uid)这个scope来引导需要授权的用户到如下地址
https://api.weibo.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&scope=snsapi_base
2. 如果用户同意授权,页面跳转至 YOUR_REGISTERED_REDIRECT_URI/?code=CODE
3. 换取Access Token
开发者请注意,这里通过code换取的网页授权access_token,与 申请消息接口 中“第三步:成为开发者,获取access_token”中的access_token是不同的;
第三方可通过下述接口来获取网页授权access_token。但是如果scope=snsapi_base,则本步骤中获取到网页授权access_token的同时,也获取到了uid,snsapi_base式的网页授权流程即到此为止。
https://api.weibo.com/oauth2/access_token?client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorization_code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&code=CODE
(其中client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET可以使用basic方式加入header中)
正确时返回JSON数据包如下:
{ "access_token":"ACCESS_TOKEN", "remind_in":3600, "expires_in":3600, "uid":"UID", "scope":"snsapi_base" }