前言

前些日子写了一篇关于H5网页集成支付宝的文章:

Spring Boot集成支付宝(最新版SDK)—— H5/网页支付

当时写了好久,往那一坐就是俩小时,写完直接就发布了,发布之后才感觉少点啥——只写了网页支付,忘了写移动端APP支付

APP集成支付宝,还是很简单的(当然建立在上一篇文章的基础上),本文应该写在上一篇文章的,但是上一篇文章的篇幅已经很长了,读起来会很累。

所以此文将作为上一篇文章的下集,请先看我的上一篇文章再回来读此文,再次贴出链接:

Spring Boot集成支付宝(最新版SDK)—— H5/网页支付

移动端APP集成支付宝

打开官方文档,还记得我们上一节说的API规范吗:

基于此,我们继续往下看:

看到了吧,简直不要太容易,换一下调用的方法即可,接下来修改代码:

package com.course.java.alipay.service;import com.alipay.easysdk.factory.Factory;
import com.alipay.easysdk.payment.app.models.AlipayTradeAppPayResponse;
import com.alipay.easysdk.payment.facetoface.models.AlipayTradePayResponse;
import com.alipay.easysdk.payment.page.models.AlipayTradePagePayResponse;
import com.course.java.alipay.bo.PaymentBO;
import com.course.java.alipay.util.OrderUtil;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;import java.math.BigDecimal;/***  支付宝支付,业务实现** @author wangziyang* @date 2020-10-01* */
@Service
public class PayService {//支付成功后要跳转的页面@Value("${alipay.returnUrl}")private String returnUrl;/***  下单支付* */public Object pay (PaymentBO bo) throws Exception {//从存储介质(如MySQL、Redis)查询商品信息、总金额等敏感信息//…………省略相关代码,这里直接赋值…………bo.setSubject("测试商品");bo.setTotal(new BigDecimal(10.00));//调用sdk,发起支付/*AlipayTradePagePayResponse response = Factory.Payment//选择网页支付平台.Page().asyncNotify("http://98d89k.natappfree.cc/pay/fallback")//调用支付方法,设置订单名称、我们自己系统中的订单号、金额、回调页面.pay(bo.getSubject() , OrderUtil.getOrderNo(), bo.getTotal().toString() , returnUrl);*///只需要换一个支付场景即可AlipayTradeAppPayResponse response = Factory.Payment//选择app支付平台.App()//可通过此方法单独设置异步回调,优先级大于配置文件.asyncNotify(returnUrl).pay(bo.getSubject() , OrderUtil.getOrderNo() , bo.getTotal().toString());//这里的response.body,就是一个订单串,直接返回给移动端。// (实际场景要用统一的响应模板进行封装,code、msg、data,偷个懒)return response.body;}
}

这就好了,只需要把支付宝返回的订单串原封不动的返回给移动端,移动端就可以唤起支付宝支付。异步回调的API该咋写就咋写,和之前一样;至于支付完成之后的页面,由移动端控制

手笨,不会安卓和IOS,就不演示效果了,反正后端是没问题,拜~~~

Spring Boot集成支付宝(最新版SDK)—— 手机支付相关推荐

  1. Spring Boot集成支付宝电脑网站支付功能

    Spring Boot集成支付宝电脑网站支付功能 接入准备 登录 创建应用 添加能力 生成私钥与公钥 开发设置 沙箱环境 示例Demo的使用与学习 下载Demo 启动项目 参数配置 执行测试 Spri ...

  2. Spring Boot 集成支付宝 沙箱支付

    1.沙箱环境简介&基础开发配置 1.进入支付宝官网,扫码进入,网址:https://open.alipay.com/platform/home.htm 2.找到开发服务进入下面的研发服务 3. ...

  3. Spring Boot 集成 Swagger 生成 RESTful API 文档

    原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swa ...

  4. Spring Boot集成阿里云视频点播服务的过程记录

    阿里云视频点播 效果预览 视频点播 视频点播概述 功能 优势 流程 环境准备 开通视频点播 创建RAM用户并授权 上传SDK 上传流程 下载上传SDK 安装上传SDK 集成Java上传SDK 异常说明 ...

  5. Spring Boot集成第三方登录之微信登录

    Spring Boot集成第三方登录之微信登录 准备工作 注册 创建网站应用 网站应用开发指南 授权流程 请求CODE 获取access_token 使用access_token调用接口 获取用户个人 ...

  6. spring boot 集成 人脸识别 arcsoft

    关于虹软 虹软是计算机视觉行业领先的算法服务提供商及解决方案供应商,服务于世界各地的客户,将领先的计算机视觉技术商业化应用在智能手机.智能汽车.智能家居.智能零售.互联网视频等领域,并且仍在不断探索新 ...

  7. 《Spring Boot极简教程》第8章 Spring Boot集成Groovy,Grails开发

    第8章 Spring Boot集成Groovy,Grails开发 本章介绍Spring Boot集成Groovy,Grails开发.我们将开发一个极简版的pms(项目管理系统). Groovy和Gra ...

  8. Spring Boot集成Swagger导入YApi@无界编程

    接口APi开发现状 现在开发接口都要在类似YApi上写文档,这样方便不同的团队之间协作,同步更新接口,提高效率. 但是如果接口很多,你一个个手工在YApi去录入无疑效率很低. 如果是使用Spring ...

  9. spring boot集成swagger,自定义注解,拦截器,xss过滤,异步调用,定时任务案例...

    本文介绍spring boot集成swagger,自定义注解,拦截器,xss过滤,异步调用,定时任务案例 集成swagger--对于做前后端分离的项目,后端只需要提供接口访问,swagger提供了接口 ...

最新文章

  1. [转]SQLServer和Oracle,存储过程区别,常用函数对比
  2. pycharm如何设置注释的字体颜色
  3. canvas合成图片 圣诞节新技能戴帽
  4. 5G 落地进入爆发期,是时候让毫米波登场了
  5. 前后端分离必备的接口规范,十分接地气
  6. 小程序开发代码_快速学会微信小程序开发,无需懂代码!
  7. html离线地图,离线地图三维开发-添加HTML
  8. 从零开始学前端:定位 --- 今天你学习了吗?(CSS:Day17)
  9. axios请求中跨域及post请求问题解决方案
  10. linux启动找不到,pxe启动的时候找不到pxelinux.0的原因
  11. 网页设计中色彩的应用
  12. playwright基本使用方法
  13. 毕设 公式 格式 如何设置(WPS)
  14. e430c参数 thinkpad_联想ThinkPad E430c(33651E1)
  15. 买房贷款,“房贷20年”和“房贷30年”,哪个更划算?为什么?
  16. 人人网移动开发架构及相关服务器架构
  17. VUE同步和异步请求
  18. 使用阿里云OSS完成文件的上传样例
  19. 如何解析Plist文件?
  20. 基于人类视觉系统建模的仿生低层次图像处理

热门文章

  1. 《Java学习笔记(第8版)》学习指导
  2. 有了这台冰箱,想在家宅多久都可以
  3. 普度网络营销策划_普度网络营销策划:中小企业线上营销沙龙成功举办
  4. ArcMap学习笔记(七)地图制作
  5. python语法(一)
  6. 11. 将学生的学号及平均成绩定义为一个视图(s_g),学号用sno表示,平均成绩用gavg表示。
  7. 深度学习-np.pad 填充详解
  8. Kafka节点服役和退役
  9. 打印系统开发(36)——打印方面套打是什么意思,如何实现套打?
  10. php dwg格式,无需AutoCAD,用C#生成DWG文件