支付宝签名方式选择:普通公钥、公钥证书
下面介绍公钥证书方式的接入:
1、生成RSA秘钥,官方参考文档:
https://docs.open.alipay.com/291/105971/
这里我选择第一种,不需要下载直接在线生成密钥。
此时生成了应用公钥,应用私钥。
点击生成csr按钮
说明:
组织/公司 名称一定要和开发者中心门户账号信息的公司名称保持一致,否则会导致后续步骤中上传 CSR 证书文件校验失败。
沙箱环境下 组织/公司 名称应填写为 沙箱环境。
2、控制台配置:
登录开发者中心控制台 >研发服务>沙箱应用:
点击设置:
加签模式选择公钥证书 ,上传证书文选择上传 CSR 文件在线生成证书或者上传已申请证书,即可完成公钥证书的设置。上传证书文件。即可完成公钥证书的设置。
选择上传CS 文件在线生成证书并点击上传 CSR 文件在线生成证书
选择 上传已申请证书,点击,选择上一步骤生成的 .csr 文件上传。上传完成证书后,系统会自动识别证书的加密方式。
3、编码:
pom依赖
<!-- https://mvnrepository.com/artifact/com.alipay.sdk/alipay-sdk-java -->
<dependency>
<groupId>com.alipay.sdk</groupId>
<artifactId>alipay-sdk-java</artifactId>
<version>3.0.0</version>
</dependency>
一、支付接口
控制层:
/**
* 支付
* @param response
* @throws IOException
* @throws AlipayApiException
*/
@ResponseBody
@GetMapping("/toPay")
public CommonResult toPay(Order order, HttpServletResponse response) throws IOException, AlipayApiException {
AlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig.gatewayUrl, AlipayConfig.APP_ID, AlipayConfig.APP_PRIVATE_KEY, "json",
AlipayConfig.CHARSET, AlipayConfig.ALIPAY_PUBLIC_KEY, AlipayConfig.sign_type);
// 保存订单
Boolean flag = orderService.save(order);
flag = goodsService.saveBatch(order.getGoods());
if (flag){
//设置请求参数
AlipayTradePagePayRequest alipayRequest = new