位置: IT常识 - 正文

支付宝沙箱服务 (结合springboot实现,这里对接的是easy版本,工具用的是IDEA,WebStrom)(沙箱支付宝app正式版)

编辑:rootadmin
一:打开支付宝开发平台,登录,然后点击控制台 https://open.alipay.com/ 二:滚动到底部,选着沙箱服务 三:获取到对接要用的appId和公钥私钥 四:打开IDEA导入所需的xml文件 <!-- 支付宝--> <!-- https://mvnrepository.com/arti ...

推荐整理分享支付宝沙箱服务 (结合springboot实现,这里对接的是easy版本,工具用的是IDEA,WebStrom)(沙箱支付宝app正式版),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:支付宝沙箱服务怎么开启,支付宝沙箱下载官网,支付宝沙箱环境详细讲解,支付宝沙箱环境详细讲解,支付宝沙箱支付教程个人测试,支付宝沙箱服务怎么开启,支付宝沙箱服务怎么开启,支付宝沙箱服务怎么关闭,内容如对您有帮助,希望把文章链接给更多的朋友!

一:打开支付宝开发平台,登录,然后点击控制台

https://open.alipay.com/

二:滚动到底部,选着沙箱服务

三:获取到对接要用的appId和公钥私钥

支付宝沙箱服务 (结合springboot实现,这里对接的是easy版本,工具用的是IDEA,WebStrom)(沙箱支付宝app正式版)

四:打开IDEA导入所需的xml文件

<!-- 支付宝--> <!-- https://mvnrepository.com/artifact/com.alipay.sdk/alipay-easysdk --> <dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-easysdk</artifactId> <version>2.2.0</version> </dependency>

五:编写实体类:

import lombok.Data;@Datapublic class Alipay { private String traceNo; private String totalAmount; private String subject; private String alipayTraceNo;}

六:编写yaml文件(这里的回调要用网络https服务,这里建议使用花生壳可以完成域名访问!)

#支付宝配置alipay: appId: ? #私钥 appPrivateKey: ? #公钥 alipayPublicKey: ? #回调地址 notifyUrl: ?

七:编写服务类:

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.stereotype.Component;import javax.annotation.PostConstruct;@Data@Component@ConfigurationProperties(prefix = "alipay")public class AplipayConfig { private String appId; private String appPrivateKey; private String alipayPublicKey; private String notifyUrl; @PostConstruct public void init() { // 设置参数(全局只需设置一次) Config config = new Config(); config.protocol = "https"; config.gatewayHost = "openapi.alipaydev.com"; config.signType = "RSA2"; config.appId = this.appId; config.merchantPrivateKey = this.appPrivateKey; config.alipayPublicKey = this.alipayPublicKey; config.notifyUrl = this.notifyUrl; Factory.setOptions(config); System.out.println("=======支付宝SDK初始化成功======="); }}

八:编写控制器(写完控制器建议直接测试访问看看可不可以访问的到,链接在第九步)

import com.alipay.easysdk.factory.Factory;import com.alipay.easysdk.payment.page.models.AlipayTradePagePayResponse;import com.rookie.sixthbackstage.entity.Alipay;import com.rookie.sixthbackstage.entity.OrderItem;import com.rookie.sixthbackstage.mapper.OrderItemMapper;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import javax.servlet.http.HttpServletRequest;import java.net.URLEncoder;import java.util.HashMap;import java.util.Map;@RestController@RequestMapping("/alipay")public class AliPayController { @Autowired OrderItemMapper orderItemMapper; @GetMapping("/alipay") // &subject=xxx&traceNo=xxx&totalAmount=xxx public String pay(Alipay aliPay) { AlipayTradePagePayResponse response; try { // 发起API调用(以创建当面付收款二维码为例) response = Factory.Payment.Page() .pay(URLEncoder.encode(aliPay.getSubject(), "UTF-8"), aliPay.getTraceNo(), aliPay.getTotalAmount(), "《这里放支付成功的地址!》"); } catch (Exception e) { System.err.println("调用遭遇异常,原因:" + e.getMessage()); throw new RuntimeException(e.getMessage(), e); } return response.getBody(); } @PostMapping("/notify") // 注意这里必须是POST接口 public String payNotify(HttpServletRequest request) throws Exception { if (request.getParameter("trade_status").equals("TRADE_SUCCESS")) { System.out.println("=========支付宝异步回调========"); Map<String, String> params = new HashMap<>(); Map<String, String[]> requestParams = request.getParameterMap(); for (String name : requestParams.keySet()) { params.put(name, request.getParameter(name)); // System.out.println(name + " = " + request.getParameter(name)); } int tradeNo = Integer.parseInt(params.get("out_trade_no")); String gmtPayment = params.get("gmt_payment"); String alipayTradeNo = params.get("trade_no"); double pay_price= Double.parseDouble(params.get("buyer_pay_amount")); // 支付宝验签 if (Factory.Payment.Common().verifyNotify(params)) { // 验签通过 System.out.println("交易名称: " + params.get("subject")); System.out.println("交易状态: " + params.get("trade_status")); System.out.println("支付宝交易凭证号: " + params.get("trade_no")); System.out.println("商户订单号: " + params.get("out_trade_no")); System.out.println("交易金额: " + params.get("total_amount")); System.out.println("买家在支付宝唯一id: " + params.get("buyer_id")); System.out.println("买家付款时间: " + params.get("gmt_payment")); System.out.println("买家付款金额: " + params.get("buyer_pay_amount")); // 支付成功后,修改自己的订单状态,这里的方法是我自己写的,根据自己实际情况来做更改 OrderItem orderItem=new OrderItem(0,tradeNo,0,pay_price,gmtPayment,"","已支付"); orderItemMapper.updateOrderItemById(orderItem); } } return "success"; }}

九:前端测试

//http://localhost:8089/alipay/alipay?subject=asdflas&traceNo=123123&totalAmount=29999//链接,复制到浏览器试试看可不可以打开支付宝的页面 //http://localhost:8089/alipay/alipay/asdflas/123123/29999//传数据,名称,订单号,价格,更多参数请参考官网的文档!//结账按钮绑定的方法 gopay() { var url = localhost + "/alipay/alipay?subject=" + subject + "&traceNo=" + traceNo + "&totalAmount=" + totalAmount; location.href = url; },

十:结果

十一:想要扫码支付的要下载沙箱的支付宝,账号密码的话在沙箱账号里,也是沙箱支付宝的登录账号!

本文链接地址:https://www.jiuchutong.com/zhishi/310951.html 转载请保留说明!

上一篇:为织梦dede:likearticle添加start channelid orderby等参数的方法(织梦作坊的微博)

下一篇:python装饰器如何保留原函数信息

  • 荣耀X30Max跑分

    荣耀X30Max跑分

  • 微信撤销转账在哪里(微信 撤销 转账)

    微信撤销转账在哪里(微信 撤销 转账)

  • 华为nova3e能连拍吗(华为nova3怎么连拍)

    华为nova3e能连拍吗(华为nova3怎么连拍)

  • 微信把对方删了发信息看得到吗(微信把对方删了对方还有聊天记录吗)

    微信把对方删了发信息看得到吗(微信把对方删了对方还有聊天记录吗)

  • 闲鱼不发货也不退我钱怎么办(闲鱼不发货也不搭理人)

    闲鱼不发货也不退我钱怎么办(闲鱼不发货也不搭理人)

  • 网线水晶头正确接法(网线水晶头正确接线图解)

    网线水晶头正确接法(网线水晶头正确接线图解)

  • p40支持40w快充吗(p40支持40w超级快充吗)

    p40支持40w快充吗(p40支持40w超级快充吗)

  • 联想电脑系统恢复,快捷键是什么(联想电脑系统恢复工具)

    联想电脑系统恢复,快捷键是什么(联想电脑系统恢复工具)

  • soul卸载后重新下载聊天记录还在吗(soul卸载后重新安装怎么恢复聊天记录)

    soul卸载后重新下载聊天记录还在吗(soul卸载后重新安装怎么恢复聊天记录)

  • 苹果11跟xr屏幕一样吗(苹果11pro 屏幕多少寸)

    苹果11跟xr屏幕一样吗(苹果11pro 屏幕多少寸)

  • 下厨房怎么发不了作品了(下厨房为啥不能用了)

    下厨房怎么发不了作品了(下厨房为啥不能用了)

  • 小米手表触摸屏没反应(小米手表触摸屏失灵修复小技巧)

    小米手表触摸屏没反应(小米手表触摸屏失灵修复小技巧)

  • 手机卡放到另一个手机上没有联系人的原因(手机卡放到另一个手机上微信聊天记录可以恢复吗)

    手机卡放到另一个手机上没有联系人的原因(手机卡放到另一个手机上微信聊天记录可以恢复吗)

  • imac可以当显示器用吗(imac2021可以当显示器用吗)

    imac可以当显示器用吗(imac2021可以当显示器用吗)

  • iqoo3什么时候上市(iqoo3什么时候上市多少钱)

    iqoo3什么时候上市(iqoo3什么时候上市多少钱)

  • vivo手机没信号怎么办(vivo手机没信号无服务怎么解决)

    vivo手机没信号怎么办(vivo手机没信号无服务怎么解决)

  • vivo音乐怎么设置桌面歌词(vivo音乐怎么设置铃声)

    vivo音乐怎么设置桌面歌词(vivo音乐怎么设置铃声)

  • 咪咕超级会员怎么退订(咪咕超级会员怎么领取阅读会员)

    咪咕超级会员怎么退订(咪咕超级会员怎么领取阅读会员)

  • 探探卸载了别人还能看到我吗(探探卸载了别人还能看到距离吗)

    探探卸载了别人还能看到我吗(探探卸载了别人还能看到距离吗)

  • 爱奇艺有些电视剧为何要预约(爱奇艺有些电视剧没有字幕)

    爱奇艺有些电视剧为何要预约(爱奇艺有些电视剧没有字幕)

  • oppo便签在哪(oppo便签在哪个分区)

    oppo便签在哪(oppo便签在哪个分区)

  • 苹果x为什么面部识别用不了(苹果X为什么面容解锁了还要往上滑)

    苹果x为什么面部识别用不了(苹果X为什么面容解锁了还要往上滑)

  • 微信红包收不了怎么办(微信红包收不了让完善信息怎么回事)

    微信红包收不了怎么办(微信红包收不了让完善信息怎么回事)

  • 小规模纳税人执行小企业会计准则吗
  • 年底企业所得税计提少了
  • 个税返还什么时候到账
  • 期末留抵增值税在哪个科目
  • 环保企业会计分录
  • 印花税缴款怎么用银行卡支付
  • 金蝶软件发票录入什么科目
  • 出口退税综合服务平台广东
  • 红发票和蓝发票
  • 增值税加附加税加企业所得税加印花税是多少个税点
  • 所有者投入的普通股会计分录
  • 扣缴义务人是否可以领税务发票,是否可以正常申报
  • 企业发生的技术转让费应计入
  • 开广告公司需要营业执照吗
  • 分类账和明细账平行登记规则
  • 捐款怎样抵扣个税
  • 房地产企业开发成本科目明细
  • 个人出租房屋应该注意什么
  • 公司买包包送员工入可以计入什么科目?
  • 专票密码区压线可以报销吗
  • 资产减值准备的账务处理
  • 房产报废手续
  • 建设工程是否可以约定非工程所在地仲裁委仲裁
  • 建筑业简易征收进项税额转出
  • 招标文件费开票品目
  • 如何按增值税计税
  • 公司账户有钱怎么取出来
  • 固定资产后续支出是指固定资产在使用过程中发生的
  • 出口押汇申请书
  • 期货手续费会计分录
  • 会计谨慎性原则是指
  • 收到招标公司开的发票
  • 企业所得税汇算表
  • 在windows中桌面是
  • remind32.exe - remind32是什么进程 有什么用
  • 在windows 7中
  • 出租设备的租金计入哪个科目
  • 苹果14数据线
  • 个人医疗保险怎么取出来
  • rnbrcache.exe是什么意思
  • 前端面试题什么是网络协议
  • vue引用类型
  • css3题目
  • open是什么含义
  • vue.mixin是什么
  • php源码封装
  • 增值税进项税加计抵减
  • 出口货物不予免、抵和退税为什么是按外销离岸价计算
  • 不确认递延所得税资产的特殊情况举例
  • 收到境外服务费会计分录
  • 其他科技推广服务业可以加计扣除吗
  • 合营企业长期股权投资
  • 计提坏账准备和确认坏账损失
  • 服务器配置mysql
  • 以前年度的费用发票怎么入账
  • 购置一项设备,有两种可供选择
  • 季度末需要结转本年利润吗
  • 解析视频
  • sql实用教程
  • ubuntu18.04更新到20.04
  • freebsd11.3安装教程
  • win8.1系统升级win10
  • windows十桌面
  • ubuntu源代码
  • macos如何新建文件
  • linux 根目录
  • 苹果怎样快速移动应用到其他桌面
  • 无损音乐如何播放
  • linux常用网络工具
  • linux 文件夹权限 777
  • windows8兼容性
  • cocos2dx3.0的label字体去描边
  • js判断checkbox是否被选中
  • 北京市国家税务局电话
  • 地方税务局分局局长级别
  • 我们如何理解税收意义
  • 大同税务局官网录取名单
  • 国税家园
  • 加油账单怎么查询
  • 国税局信息中心事业编待遇
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设