服务商如何代商户调用获取用户信息

来自    用户与第三方授权 | 
作者:符栖  |  更新于:2019-01-22 15:35:07     

前言:想要了解服务商如何代商户调用获取用户信息,必须先了解第三方授权以及用户信息授权的逻辑以及调用方式。

一、文档地址

第三方用户信息授权:https://docs.open.alipay.com/20160728150111277227/intro

用户信息授权:https://docs.open.alipay.com/289/105656

获取会员信息:https://docs.open.alipay.com/284

二、开发前准备工作

调用步骤:https://openclub.alipay.com/read.php?tid=12194&fid=69

注意事项:1、支持沙箱测试;2、不需签约,但需添加功能;3、支持第三方调用。

检查调用appid的应用功能列表中是否“获取会员信息”。

三、接口调用逻辑

(一)第三方应用授权

1、拼接第三方授权链接

拼接规则:https://openauth.alipay.com/oauth2/appToAppAuth.htm?app_id=APPID&redirect_uri=ENCODED_URL

注意:

(1)appid为服务商应用的appid;

(2)redirect_uri 需进行URLencode转义;

(3)redirect_uri :在服务商应用中进行查看,授权回调地址是自己配置自己所想要访问的地址。

2、获取app_auth_code

商户访问第三方授权链接返回获取app_auth_code。

3、获取app_auth_token

服务商使用设置的appid调用alipay.open.auth.token.app(换取应用授权令牌)获取app_auth_token(商户授权令牌)、auth_app_id(授权商户的AppId)等。

(二)用户信息授权

1、拼接用户信息授权链接

拼接规则:https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=APPID&scope=SCOPE&redirect_uri=ENCODED_URL

注意

(1)appid为商户的appid,在服务商代商户获取的用户信息的过程中,该appid设置为第三方应用授权换取应用授权令牌接口返回的auth_app_id(授权商户的AppId)参数值

(2)获取会员信息,scope必传auth_user(获取用户信息、网站支付宝登录);

(3)redirect_uri :该授权回调地址是第三方应用授权换取应用授权令牌接口返回的auth_app_id(授权商户的AppId)对应应用设置的授权回调地址,即在授权商户应用中查看,而不是服务商应用中查看;

2、获取auth_code

用户访问(appid设置是授权商户appid的)用户信息授权链接返回获取auth_code。

3、获取access_token

服务商调用alipay.system.oauth.token(换取授权访问令牌)进行获取access_token。

注意:

(1)接口中设置的appid为服务商的appid,而不是授权商户的appid;

(2)接口中必须设置第三方应用授权换取应用授权令牌接口返回的app_auth_token(商户授权令牌);

(三)获取会员信息

服务商调用alipay.user.info.share(支付宝会员授权信息查询接口)代商户获取用户信息use_id、昵称、头像等。

注意:

(1)接口中设置的appid为服务商的appid,而不是授权商户的appid;

(2)接口中必须设置第三方应用授权换取应用授权令牌接口返回app_auth_token(商户授权令牌);

(3)接口中设置用户信息授权换取授权访问令牌接口返回的access_token。

四、沙箱环境模拟测试参考

沙箱环境模拟调用逻辑示例代码:https://openclub.alipay.com/read.php?tid=12868&fid=68

具体各开发语言示例代码和参数说明详见https://openclub.alipay.com/read.php?tid=14599&fid=68&page=1#anchor2

 

如果还是报错,请按如下方式进行提问:

正确提问方式:使用环境(沙箱还是正式环境)+接口名称(中文+英文)+ 请求参数 + 报错信息详情

shangpeng | 2019-03-25 09:40:42
第三方服务商代商户获取小程序用户的access_token,调用alipay.system.oauth.token接口的时候,接口中的appid参数使用的是第三方服务商的appid,接口的app_auth_token参数是商户通过授权第三方服务商获取的,但是接口中一直提示"sub_code": "isv.invalid-app-id","sub_msg": "无效的AppID参数",其他的第三方代商户的接口操作是没这种问题的
符栖 | 2019-03-25 09:54:09
shangpeng:第三方服务商代商户获取小程序用户的access_token,调用alipay.system.oauth.token接口的时候,接口中的appid参数使用的是第三方服务商的appid,接口的app_auth_token参数是商户通过授权第三方...回到原帖
麻烦您将调用alipay.system.oauth.token接口过程中使用的获取code的appid是什么?以及您调用这个接口设置的appid和code值发我一下
我的回复

返回顶部