网站建设丶金手指花总13,镇江seo快速排名,案例学——网页设计与网站建设,网站充值接口怎么做前言
支付宝沙箱支付#xff08;Alipay Sandbox Payment#xff09;是支付宝提供的一个模拟支付环境#xff0c;用于开发和测试支付宝支付功能的开发者工具。在真实的支付宝环境中进行支付开发和测试可能涉及真实资金和真实用户账户#xff0c;而沙箱环境则提供了一个安全…前言
支付宝沙箱支付Alipay Sandbox Payment是支付宝提供的一个模拟支付环境用于开发和测试支付宝支付功能的开发者工具。在真实的支付宝环境中进行支付开发和测试可能涉及真实资金和真实用户账户而沙箱环境则提供了一个安全、隔离的环境使开发者能够模拟支付过程测试支付功能而不会使用真实资金。 一.沙箱支付
1.准备工作
1进入支付宝开放平台
支付宝开放平台https://openhome.alipay.com/
2下载安装支付宝开放平台密钥工具
根据自己电脑系统下载对应版本
小程序文档 - 支付宝文档中心 3生成密钥 4生成支付宝公钥
密钥生成完成后重新回到支付宝开放平台进入控制台 下滑找到沙箱 设置自定义密钥的公钥模式 将我们刚刚在工具中生成的应用公钥填写 4.配置沙箱账号
在沙箱账号中可以直接看到我们的商家信息和卖家信息也可手动对其进行充值 5下载沙箱支付宝
当前版本只支持安卓
登录 - 支付宝欢迎登录支付宝支付宝-全球领先的独立第三方支付平台致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验以及转账收款/水电煤缴费/信用卡还款等生活服务应用为广大为从事电子商务的网站提供支付产品/支付服务的在线订购和技术支持等服务帮助商家快速接入支付工具高效、安全、快捷地开展电子商务。https://open.alipay.com/develop/sandbox/tool/alipayclint
到这里我们的准备工作就完成了更详细参考快速接入 - 支付宝文档中心 (alipay.com)
二.SpringBoot集成
1.导入依赖
dependencygroupIdcom.alipay.sdk/groupIdartifactIdalipay-easysdk/artifactIdversion2.0.1/version
/dependency
2.配置 AlipayConfig
package com.yu.NewPowerCart.config;import com.alipay.easysdk.factory.Factory;
import com.alipay.easysdk.kernel.Config;
import com.alipay.easysdk.payment.page.models.AlipayTradePagePayResponse;
import com.yu.NewPowerCart.pojo.Order;
import org.springframework.stereotype.Component;Component
public class AlipayConfig {private Config aliconfig() {Config config new Config();//沙箱支付宝地址config.gatewayHost openapi-sandbox.dl.alipaydev.com;//协议httpsconfig.protocol https;//应用ID,您的APPID收款账号既是您的APPID对应支付宝账号config.appId ;//支付宝公钥config.alipayPublicKey ;//签名方式config.signType RSA2;//商户私钥应用私钥您的PKCS8格式RSA2私钥config.merchantPrivateKey ;return config;}public String goAlipay(Order order) {try {// 1. 设置参数全局只需设置一次Factory.setOptions(aliconfig());// 2. 发起API调用subject商品标题、outTradeNo订单编号、totalAmount总金额、returnUrl异步通知地址AlipayTradePagePayResponse response Factory.Payment.Page().pay(商城项目收款,order.getOid().toString(),order.getTotal().toString(),//支付成功之后的异步通知跳出到自己系统的哪个位置http://localhost:8080/order/payDone);return response.body;} catch (Exception e) {e.printStackTrace();throw new RuntimeException(e);}}}注代码中空的地方需要填写自己的信息 查看地址支付宝开放平台 (alipay.com) 公钥在这里查看注意不是应用公钥是支付宝公钥 商户私钥应用私钥 在我们的密钥生成工具中 3.编写对应Controller控制支付及跳转
RequestMapping(/pay)ResponseBodypublic String pay(User user, String oid){//根据订单id获取订单Order order orderService.getById(oid);//调用支付宝的支付功能String body new AlipayConfig().goAlipay(order);System.out.println(body);return body;}RequestMapping(/payDone)public String payDone(RequestParam MapString,String ms) throws Exception {//验签Boolean f Factory.Payment.Common().verifyNotify(ms);if(!f){throw new BusinessException(JsonResponseStatus.UN_KNOWN);}String oid ms.get(out_trade_no);//调用支付宝的支付功能orderService.update(new UpdateWrapperOrder().eq(oid,oid).set(status,1).set(pay_date,new Date()));return ok;}