aliPay Easy版

2024-05-10 22:44
文章标签 easy alipay

本文主要是介绍aliPay Easy版,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

引入依赖

    <dependency><groupId>com.alipay.sdk</groupId><artifactId>alipay-easysdk</artifactId><version>2.2.2</version></dependency>

创建一个aliPay配置类

package com.jiusi.config;import com.alipay.easysdk.factory.Factory;
import com.alipay.easysdk.kernel.Config;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;import javax.annotation.PostConstruct;@Data
@ConfigurationProperties(prefix = "alipay")
@Configuration
public class AliPayConfig {// 应用Idprivate String appId;// 应用私有private String appPrivateKey;// 支付宝公钥private String publiceKey;// 回调接口路径private String notifyUrl;// 支付宝网关地址private String gatewayHost;@PostConstructpublic void init(){Config config = new Config();config.protocol = "https";config.gatewayHost = this.gatewayHost;// 支付宝网关地址config.signType = "RSA2";// 业务配置config.appId = this.appId;config.merchantPrivateKey = this.appPrivateKey;config.alipayPublicKey = this.publiceKey;config.notifyUrl = this.notifyUrl;Factory.setOptions(config);System.out.println("支付宝相关配置完成");}
}

配置文件

alipay:appId: 9021000136681693appPrivateKey: 支付宝沙箱私钥publiceKey: 支付宝沙箱公钥notifyUrl: 公网地址+接口返回路径gatewayHost: openapi-sandbox.dl.alipaydev.com

业务代码

package com.jiusi.controller;import com.alipay.easysdk.factory.Factory;
import com.alipay.easysdk.payment.page.models.AlipayTradePagePayResponse;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import java.util.Map;@RestController
public class AliPayController {@GetMapping("/api/pay")public String pay(String subject, String outTradeNo, String totalAmount, String returnUrl) throws Exception {//调用支付宝支付接口AlipayTradePagePayResponse pay = Factory.Payment.Page().pay(subject, outTradeNo, totalAmount, returnUrl);String body = pay.getBody();return body;}@PostMapping("/api/notify")  //接口返回路径public String payOk(@RequestParam Map param) throws Exception {String tradeStatus = param.getOrDefault("trade_status", "").toString();//判断是否支付成功if(tradeStatus.trim().equals("TRADE_SUCCESS")){//判断是否从支付宝回调的参数if(Factory.Payment.Common().verifyNotify(param)){return "success";}}return "no";}
}

这篇关于aliPay Easy版的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/977771

相关文章

LibSVM学习(六)——easy.py和grid.py的使用

我们在“LibSVM学习(一)”中,讲到libSVM有一个tools文件夹,里面包含有四个python文件,是用来对参数优选的。其中,常用到的是easy.py和grid.py两个文件。其实,网上也有相应的说明,但很不系统,下面结合本人的经验,对使用方法做个说明。        这两个文件都要用python(可以在http://www.python.org上下载到,需要安装)和绘图工具gnup

11991 - Easy Problem from Rujia Liu?

题意: 输入一串整型数列,再输入两个数k,v,输出第k个v的序号。不存在则输出0,如第一个样例 8 41 3 2 2 4 3 2 11 3 //第1个3,序号为2,输出22 4 //第2个4,不存在,输出03 2 //第3个2,序号为7,输出74 2 思路: struct num {

【开发工具】开发过程中,怎么通过Easy JavaDoc快速生成注释。

文章目录 引言什么是Easy JavaDoc?Easy JavaDoc用来干什么?如何使用Easy JavaDoc?安装Easy JavaDoc配置Easy JavaDoc使用Easy JavaDoc生成注释 Easy JavaDoc与IDEA自带注释的区别IDEA自带注释Easy JavaDoc Easy JavaDoc的优缺点优点缺点 步骤 1:打开设置步骤 2:找到Easy JavaD

easy简化封装

//confirm function Confirm(msg, control) {$.messager.confirm('确认', msg, function (r) {if (r) {eval(control.toString().slice(11));}});return false;}//loadfunction Load() {$("<div class=\"datagrid-ma

Easy Voice Toolkit - 简易语音工具箱,一款强大的语音识别、转录、转换工具 本地一键整合包下载

Easy Voice Toolkit 是一个基于开源语音项目实现的简易语音工具箱,提供了包括语音模型训练在内的多种自动化音频工具,集成了GUI,无需配置,解压即用。 工具箱包括 audio-slicer、VoiceprintRecognition、whisper、SRT - to - CSV - and - audio - split、vits 和 GPT - SoVITS 等。这些优秀

easy_spring_boot Java 后端开发框架

Easy SpringBoot 基于 Java 17、SpringBoot 3.3.2 开发的后端框架,集成 MyBits-Plus、SpringDoc、SpringSecurity 等插件,旨在提供一个高效、易用的后端开发环境。该框架通过清晰的目录结构和模块化设计,帮助开发者快速构建和部署后端服务。 一、目录结构说明 project-root/│├─ backend/ # 后端项

[Meachines] [Easy] Safe BOF+ROP链+.data节区注入BOF+函数跳转BOF+KeePass密码管理器密码破译

信息收集 IP AddressOpening Ports10.10.10.147TCP:22,80,1337 $ nmap -p- 10.10.10.147 --min-rate 1000 -sC -sV PORT STATE SERVICE VERSION22/tcp open ssh OpenSSH 7.4p1 Debian 10+deb9u6 (protocol

05-2. Saving James Bond - Easy Version (25)

05-2. Saving James Bond - Easy Version (25) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue This time let us consider the situation in the movie "Live

VUE+Element 对接Alipay

最近项目需要尝试了一下对接AliPay,在此做个笔记 首先我调用的AliPay接口是经过后台的小伙伴封装过一层的。 在调用的时候我需要上传用户账户信息和充值金额,然后后台会放回调用结果,并在返回的数据中包含AliPay接口返回的Form表单。Form表单数据格式大概如下所示: <form name="punchout_form" method="post" action="https://op

【CF】1695D1-Tree Queries(Easy Version) 题解

传送门:1695D1 标签:动态规划 题目大意 给定一棵无根树,其中包含n个顶点。在树中隐藏了一个未知的顶点x,你需要通过查询来找出这个顶点。你可以进行k次查询,每次查询选择一个顶点v_i,在完成所有查询后,你会得到k个数字d_1, d_2, …, d_k,其中d_i表示从v_i到顶点x的最短路径上的边的数量。请注意,你知道每个距离对应哪个查询。请确定最小的k值,使得存在一些查询v_1, v_