支付宝支付——沙箱环境
文章目录
0x1. 前言
蚂蚁沙箱环境 (Beta) 是协助开发者进行接口功能开发及主要功能联调的辅助环境,通过配置参数、搭建页面及下载沙箱版支付宝可以测试PC端扫码支付功能以及达到快速熟悉搭建流程的目的。
注意:
- 由于沙箱为模拟环境,在沙箱完成接口开发及主要功能调试后,请务必在蚂蚁正式环境进行完整的功能验收测试。所有返回码及业务逻辑以正式环境为准。
- 为保证沙箱稳定,沙箱环境测试数据会进行定期数据清理。Beta 测试阶段每周日中午12点至每周一中午12点为维护时间(也就是无法使用沙箱环境)。在此时间内沙箱环境部分功能可能会不可用。
- 请勿在沙箱进行压力测试,以免触发相应的限流措施,导致无法正常使用沙箱环境。
- 沙箱支持的各个开放产品,沙箱使用的特别说明请参考各产品的快速接入文档或技术接入文档章节。
0x2. 简介
登录支付宝开放平台——到达沙箱环境页面(首次登录需要入驻为自研开发者)
登录成功后可得如下界面:
沙箱与线上不同,请注意更改代码配置。
- APPID:发起请求的应用ID。
- 支付宝网关:向支付宝发起请求的网关。
- RSA2密钥:即加密公钥,需要手动设置,必须配置,否则无法调用接口。
注意:
-
密钥和应用(APPID)一一对应,即开发者需要为名下的每个应用分别设置密钥,且不同应用的密钥不能混用(意思就是一个应用只能对应一个密钥)。
-
支付宝开放平台支持开发者使用 普通公钥、公钥证书 两种签名方式;以下步骤采用普通公钥方式说明,如需采用公钥证书签名方式,请查阅官方帮助手册。
0x3. 配置RSA2密钥
支付宝为技术开发人员提供了一键生成密钥工具(Windows版下载—MacOS版下载),可根据该软件生成一对RSA密钥、公钥证书申请CSR文件(在线申请应用公钥证书需要)。
普通公钥方式
- 下载相应环境工具并安装后即可使用,如下图所示:
- 开发者根据开发语言选择密钥格式和密钥长度,新建应用请务必使用 RSA2 密钥长度 即 2048 位(目前已使用 RSA 密钥长度即 1024 位密钥长度的应用仍然可以正常调用接口)。点击 生成密钥 后,工具会自动生成商户应用公钥(public key)和应用私钥(private key),如下图所示:
-
开发者点击工具界面下方的 打开文件位置,即可找到生成的公私钥文件,如下图所示:
-
生成密钥后,点击页面上的RSA2密钥 — 设置 — 公钥 。
-
复制生成的公钥,点击 保存设置,即可完成公钥的设置,如下图所示。
注意:
生成的私钥需妥善保管,避免遗失,不要泄露。应用私钥需填写到代码中供签名时使用。应用公钥需提供给支付宝账号管理者上传到支付宝开放平台。
0x4. 测试账户
沙箱环境提供了沙箱版支付宝与测试账户,其中包含商户号和买家号,但是该账户只能在支付宝提供的测试APK上才能使用。沙箱环境下方有提供二维码可以下载沙箱版支付宝(也可以点击此处下载)。
下载完成后,可根据左侧栏中沙箱账号获取相应的账号密码等信息进行登录,如下图所示。
0x5. 项目配置(Java语言)
可自行下载官方DEMO进行查阅:https://opendocs.alipay.com/open/54/cyz7do
- 导入Maven依赖:
<!-- https://mvnrepository.com/artifact/com.alipay.sdk/alipay-sdk-java -->
<dependency>
<groupId>com.alipay.sdk</groupId>
<artifactId>alipay-sdk-java</artifactId>
<version>4.9.100.ALL</version>
</dependency>
- 在项目中新建AlipayConfig类:
import java.io.FileWriter;
import java.io.IOException;
/**
* 支付配置
*
* @author zxchengb
* @date 2020-04-04
*/
public class Alipay