沙箱环境模拟“服务商代商户获取用户信息”代码示例

简介: 调用集成代码前,请先查看服务商代商户获取用户信息流程说明:[url]https://openclub.alipay.com/read.php?tid=12762&fid=68[/url]使用沙箱模拟服务商代商户获取用户信息逻辑流程如下:服务商appid:2016101800718925;商户...

调用集成代码前,请先查看服务商代商户获取用户信息流程说明:[url]https://openclub.alipay.com/read.php?tid=12762&fid=68[/url]

使用沙箱模拟服务商代商户获取用户信息逻辑流程如下:

服务商appid:2016101800718925;

商户appid:2016091500520089;pid:2088102175800172;

用户pid:2088102175794899;

1、第三方应用授权

(1)第三方应用授权链接

[url]https://openauth.alipaydev.com/oauth2/appToAppAuth.htm?app_id=2016101800718925&redirect_uri=https%3a%2f%2fwww.baidu.com%2f[/url]

注:沙箱环境测试拼接链接头部与正式环境不同:[url]https://openauth.alipay[/url]dev.com/oauth2/appToAppAuth.htm?app_id=APPID&redirect_uri=ENCODED_URL

(2)获取app_auth_code

[url]https://www.baidu.com/?app_id=2016101800718925&source=alipay_app_auth&app_auth_code=8e5e571d6ca74809ae23ba2669af6X17[/url]

(3)换取应用授权令牌

public static void main(String[] args) throws AlipayApiException {
		AlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig.gatewayUrl, AlipayConfig.app_id, AlipayConfig.merchant_private_key, AlipayConfig.format, AlipayConfig.charset, AlipayConfig.alipay_public_key, AlipayConfig.sign_type);
		AlipayOpenAuthTokenAppRequest request = new AlipayOpenAuthTokenAppRequest();
		//授权成功后,使用app_auth_code换取app_auth_token
		AlipayOpenAuthTokenAppModel model = new AlipayOpenAuthTokenAppModel();
		//换取令牌,不改
		model.setGrantType("authorization_code");
		//app_auth_code参数
		model.setCode("b47d70d0b43d4a46ae23c438f60afX17");
		/*//刷新令牌
		model.setRefreshToken("a3dcea3a35a342858391dfeaa336cE75");*/
		request.setBizModel(model);
	    try {
	    	AlipayOpenAuthTokenAppResponse response = alipayClient.execute(request);
		System.out.println(response.getBody());
		} catch (AlipayApiException e) {
		    //处理异常
		    e.printStackTrace();
		}
}

响应参数:

{"alipay_open_auth_token_app_response":{"code":"10000","msg":"Success","app_auth_token":"201901BB8b1c906179484ce893077fd696f4bC17","app_refresh_token":"201901BB5547a7886d7f4ac68605fa493677eC17","auth_app_id":"2016091500520089","expires_in":31536000,"re_expires_in":32140800,"tokens":[{"app_auth_token":"201901BB8b1c906179484ce893077fd696f4bC17","app_refresh_token":"201901BB5547a7886d7f4ac68605fa493677eC17","auth_app_id":"2016091500520089","expires_in":31536000,"re_expires_in":32140800,"user_id":"2088102175800172"}],"user_id":"2088102175800172"},"sign":"KRBeKgLQo8SvL/oGiybhJzh5CZjmF9KeGXlQj/pHUTtVC8cjZA/Jm6sGn0K3LNpmZ38YJOocuvKHqkoeU2SAMLYkreRBjWP5cjqWNsVScQtBh1Kwe3ePSoN7XIkyxHg9G3tqdMlk/ZEffYNVvin94KH8HJ2pBQljanM8l/VjueAmX1EdPPMOHafvWdx4hE6rz4PUy4/s+6nQADOUzP0ctW51CTk2A/e3qIYlf3kL6w8J3K2ohPCOBhPDypUnm5CSEPHCrdFHeJVw3fLPSsAqtfIqjWBIWdDzUl2ogHBf16pEiUpUtiEoDb/p1X3fxQCRrJ87XUqk5YW9EOVltx5zgA=="}

2、用户信息授权

(1)用户信息授权链接

[url]https://openauth.alipaydev.com/oauth2/publicAppAuthorize.htm?app_id=2016091500520089&scope=auth_user[/url],auth_base&redirect_uri=https%3a%2f%2fwww.baidu.com%2f

注:沙箱环境测试拼接链接头部与正式环境不同:[url]https://openauth.alipay[/url]dev.com/oauth2/publicAppAuthorize.htm?app_id=APPID&scope=SCOPE&redirect_uri=ENCODED_URL

(2)获取auth_code

[url]https://www.baidu.com/?app_id=2016091500520089&source=alipay_wallet&scope=auth_base[/url],auth_user&auth_code=1f80c8d6c21b4a8a94345e07d823QB89

(3)换取授权访问令牌

public static void main(String[] args) throws AlipayApiException {
		AlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig.gatewayUrl, AlipayConfig.app_id, AlipayConfig.merchant_private_key, AlipayConfig.format, AlipayConfig.charset, AlipayConfig.alipay_public_key, AlipayConfig.sign_type);
		AlipaySystemOauthTokenRequest request = new AlipaySystemOauthTokenRequest();
		/**
		 * 用户授权没有AlipaySystemOauthTokenModel,直接使用request
		 */
		//值为authorization_code时,代表用code换取;值为refresh_token时,代表用refresh_token换取
		request.setGrantType("authorization_code");
		//授权码,用户对应用授权后得到。即下面获取到的AccessToken
		//每次用户授权完成,回调地址中的auth_code将不一样,auth_code只能使用一次,一天未被使用自动过期。 
		request.setCode("1f80c8d6c21b4a8a94345e07d823QB89");
		//刷新令牌,上次换取访问令牌时得到
		//request.setRefreshToken("43e3bee07f354cc5a7780446412bSX75");
		try {
			String app_auth_token="201901BB8b1c906179484ce893077fd696f4bC17";
			//自调用
//		    AlipaySystemOauthTokenResponse response = alipayClient.execute(request);
		  //第三方调用接口
		    AlipaySystemOauthTokenResponse response = alipayClient.execute(request,null,app_auth_token);
		    System.out.println(response.getBody());
		} catch (AlipayApiException e) {
		    //处理异常
		    e.printStackTrace();
		}
	}

响应参数:

{"alipay_system_oauth_token_response":{"access_token":"composeBd364827b102144cf992fb7ce6e327X89","alipay_user_id":"2088102175794899","expires_in":600,"re_expires_in":660,"refresh_token":"composeBdefde11796f24938bafebefcf7834D89","user_id":"2088102175794899"},"sign":"NtsgUCZg04C5DdRnBdFSyFgg8K5pcFSnGbGV67zpo6tAuDEUB6421lAm2mdG8UHdO1PlLoSdSZmXgNZgin3bkjFe4hyOQUroPLb64whTCas5BsKBODL2s0+8LlrGnF7VJNkOSaWrDIh15DFNSKLvtA3gtvo3gvZK5gbY/428HzEE8HpBC85CEZuAA+0RsVXJvk/lvcXtAfjEKs5c1s45aOq8UmcH+HjAjmcPptNHokxYF+iY++xRgaypz7PeHMJsJNI8PS0CvznYySXwvHi9z/Ooav79X5gjjftqpd/2aSeUljbXdlf66LhcBaAFj8eT1r/Zkz+xQ2jE5M8i95HniQ=="}

3、获取会员信息

获取会员信息接口

public static void main(String[] args) throws AlipayApiException {
		AlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig.gatewayUrl, AlipayConfig.app_id, AlipayConfig.merchant_private_key, AlipayConfig.format, AlipayConfig.charset, AlipayConfig.alipay_public_key, AlipayConfig.sign_type);
		//调用接口获取用户信息
		AlipayUserInfoShareRequest request = new AlipayUserInfoShareRequest();
		//需要用户授权后,将auth_code换取accessToken,注入
		String accessToken = "composeBd364827b102144cf992fb7ce6e327X89";
		try {
		    String app_auth_token="201901BB8b1c906179484ce893077fd696f4bC17";
			//第三方调用接口
		    AlipayUserInfoShareResponse response = alipayClient.execute(request, accessToken,app_auth_token);
		//自调用
//			AlipayUserInfoShareResponse response = alipayClient.execute(request, accessToken);
			System.out.println(response.getBody());
		} catch (AlipayApiException e) {
		    //处理异常
		    e.printStackTrace();
		}
}

响应参数:

{"alipay_user_info_share_response":{"code":"10000","msg":"Success","gender":"f","is_certified":"T","is_student_certified":"F","nick_name":"买家沙箱","user_id":"2088102175794899","user_status":"T","user_type":"2"},"sign":"GFOQ5SbhPPSkL1Dmf9snUJxTEeCxngsXOQubURBIDx5C9/sb7CnNmHdSXDru9NPDlvfSQPT+b+iUOVapARafpsdqP6XIdHqQfrLB2jE6YO2ql52J07/yGrUNAwjaaKd/ndBbpljhn9laQATD1sqrwwUGmttiGkyK6cPvW3lH/ndAvbDRkwnKdrLKZGSou3erf0thL6QzlS12XXryTnvEArCuteAsqqDFi81R/PVKyXdl15P9SdVQzhJski5yZ3A1VEO9Vv96bVjVlgUZaIALddjOX4rh100e/mxx7K8qOmjX12r72pFyPrVEAQChRTSx1OxiXureiCScscHKtZdOQg=="}

设置app_auth_token和accessToken的代码方式:

注:accessToken没有可以设置为null。

PHP:

$result = $aop->execute($request,$accessToken,$app_auth_token); 

.net:

response=client.execute(request,accessToken,app_auth_token);


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

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

目录
相关文章
|
小程序 开发者
关于UniApp启动到微信小程序工具提示找不到app.json
关于UniApp启动到微信小程序工具提示找不到app.json
3191 0
|
2月前
|
人工智能 自然语言处理 数据可视化
QwenWork 千问办公全场景测评:打通 PPT、网页、数据分析,一站式 AI 办公平台上手体验
随着大模型技术快速迭代,市面上绝大多数AI工具依旧停留在“对话问答输出文本”的阶段。用户拿到AI输出文字之后,还需要手动复制粘贴,切换多个软件完成排版、制作PPT、整理表格、编写网页,大量时间消耗在中转操作上。千问办公QwenWork作为面向个人与企业的一站式AI原生办公平台,依托Qwen3.8旗舰大模型,跳出单纯聊天问答的定位,主打**对话即执行,生成即所得**。用户只需要输入一句自然语言指令,就可以直接拿到PPT、Word、Excel、可交互网页、视频剪辑素材、数据分析报告等可直接交付使用的成果。产品同时覆盖网页端、桌面客户端,深度打通钉钉生态,打通个人云盘、本地文件系统、连接器、定时任务
594 0
|
5月前
|
人工智能 自然语言处理 监控
阿里云百炼大模型服务平台如何部署模型?具体流程与模型计费方式和收费标准参考
本文系统介绍了阿里云百炼平台大模型从调优到部署上线的流程。首先需完成数据准备与模型调优,生成自定义模型并获取API Key;随后在模型部署控制台选择模型与计费方式(后付费/预付费),配置推理模式、上下文长度等参数,等待服务状态变为"运行中"即部署成功。平台提供预置吞吐、模型单元、Token用量三种计费模式,分别适用于高并发生产场景、资源隔离需求及效果验证场景,支持按量与包月付费。部署后可通过OpenAI兼容API、Dify、Chatbox等多种方式调用,也可借助Gradio搭建本地Web UI,满足多样化应用需求。
|
6月前
|
人工智能 资源调度 API
阿里云百炼AI大模型平台怎么样?支持150多种主流模型、毫秒级响应及低成本API调用说明
阿里云百炼平台支持150+主流大模型(如Qwen、DeepSeek),毫秒级响应、高并发低延迟;开通即赠7000万免费Tokens,成本优、生态全、易上手,是AI API调用的高性价比选择。阿里云百炼官网:https://t.aliyun.com/U/fPVHqY
394 0
阿里云百炼AI大模型平台怎么样?支持150多种主流模型、毫秒级响应及低成本API调用说明
|
缓存 API Python
如何通过API获取拼多多商品详情数据?
注册开放平台账号,获取client_id与client_secret,调用鉴权接口换取access_token(有效期24小时)。通过GET请求查询商品详情,需传goods_id和access_token。响应包含商品名称、价格、销量及SKU库存等信息。注意处理code非0的错误,控制请求频率≤100次/分钟,建议指数退避重试。Python示例使用requests实现。
1330 0
|
10月前
|
人工智能 数据可视化 安全
企业如何应用BI系统(2026年1月最新)
截至2026年,全球BI市场达432亿美元,中国领跑亚太增长。瓴羊Quick BI以AI增强分析为核心,支持自然语言查询、自动洞察、根因分析与预测模拟,预置行业模板,5分钟搭建看板,湖仓一体架构保障数据可信,覆盖全员用数与企业级安全合规,助力企业从“看过去”迈向“预未来”的智能决策。(239字)
|
机器学习/深度学习 人工智能 算法
深度解析:基于卷积神经网络的宠物识别
宠物识别技术随着饲养规模扩大而兴起,传统手段存在局限性,基于卷积神经网络的宠物识别技术应运而生。快瞳AI通过优化MobileNet-SSD架构、多尺度特征融合及动态网络剪枝等技术,实现高效精准识别。其在智能家居、宠物医疗和防走失领域展现广泛应用前景,为宠物管理带来智能化解决方案,推动行业迈向新高度。
1503 66
|
SQL 监控 关系型数据库
PostgreSQL普通表转换成分区表
如何使用pg_rewrite扩展将普遍表转换成分区表
|
小程序 前端开发 Java
支付宝小程序 PHP 获取用户手机号 验签解密 RSA解密 AES解密
支付宝小程序 PHP 获取用户手机号 验签解密 RSA解密 AES解密
2192 0