【支付宝对接 (一)】支付宝手机网页支付官方Demo配合沙箱测试

【支付宝对接 (一) 】支付宝手机网页支付官方Demo配合沙箱测试

一、准备工作

本次支付测试以手机网页支付作为案列,你需要打开准备的网址包括:

  1. 支付宝支付API文档:
    https://opendocs.alipay.com/apis

  2. 支付宝开放平台文档Demo以及讲解:
    https://opendocs.alipay.com/open/203/105910

  3. 支付宝沙箱环境:
    https://openhome.alipay.com/platform/appDaily.htm?tab=info

二、开发工作

(1)获取AppId与配置支付宝公钥

1、登录沙箱环境网址,选择沙箱应用
在这里插入图片描述
2、点击RSA2获取密匙,选择公钥
在这里插入图片描述
注:这里生成秘钥有两种方式,一种是支付宝的生成器,还有一种是OpenSSL

支付宝秘钥生成器: https://opendocs.alipay.com/open/291/106097/
OpenSSL(第三方工具) : https://opendocs.alipay.com/open/291/106130

我们选择支付宝秘钥生成器为例

在这里插入图片描述

3、点击Windows的进行下载,打开后点击生成密钥即可

在这里插入图片描述
4、返回你的沙箱环境页面,将生成器生成的应用公钥拷贝填进去
在这里插入图片描述
5、点击保存设置之后就会给你对应的支付宝公钥

在这里插入图片描述

(2)下载支付宝官网SDK&Demo

1、登录支付宝开放平台文档Demo(准备工作第二个网址)选择SDK&Demo下载找到对应的开发版本

在这里插入图片描述

2、导入Idea
在这里插入图片描述

3、进入AlipayConfig文件,配置你刚才生成的APPID,支付宝公钥,生成器里面生成的应用私钥
在这里插入图片描述

注: 这里需要注意的是同步验签的地址访问路径一定要和Tomcat启动的配置访问路径一致(下面会讲解配置Tomcat启动服务)否则支付成功验签跳转的时候会访问到404!!!

支付宝沙箱环境网关: https://openapi.alipaydev.com/gateway.do

三、配置Tomcat9.0.37启动支付宝手机网页支付Demo以及可能会遇到的坑问题解决

(1)Tomcat 启动支付宝Demo报错非法字符: '\ufeff问题
1、下载Tomcat

接上面的步骤,支付基本信息配置完成后需要配置Tomcat启动,没有的去下载

下载地址:https://tomcat.apache.org/

在这里插入图片描述

点击Download下载,选择windows-64下载解压到本地就可以了

在这里插入图片描述
用idea打开支付宝Demo的时候会出现这个在你的右下角,你默认选择配置就可以了

在这里插入图片描述

配置成web项目

在这里插入图片描述

2、配置Tomcat

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这里可以下拉更改默认启动成功访问的浏览器

在这里插入图片描述

点击右下角的fix

选择 Artifacts——>Web Application: Exploded——>From Moudules

在这里插入图片描述

注: 这是选择配置启动模块,当你选择from modules 后会自动弹出你之前在进来时idea自动提示你配置的configure,这个不用管,直接点Ok就可以了,直接一路Ok配置下去

在这里插入图片描述

在这里插入图片描述

一路点击Ok保存后再选择下拉选择 Edit Configurations 打开配置看看:

在这里插入图片描述

替换Tomcat默认访问路径,保持与同步验签的访问路径一致,这样才能访问到文件路径下的return_url.jsp文件,里面是写好的验签代码。

在这里插入图片描述

再点击Deployment切换:

在这里插入图片描述

修改 Application context 与Server的路径保持一致,点击Ok保存。

现在配置好了Tomcat,可以启动了,然后第一次启动可能会报这个错误: Error:(1, 1) java: 非法字符: ‘\ufeff’ 是说 AlipayConfig这个文件格式编码问题

在这里插入图片描述

解决方法是,先点右下角UTF-8转为GBK,后选择Convert,然后再点GBK转UTF-8转回来就可以了,eclipse好像不需要

(2)配置好Tomcat后启动打印日志乱码问题

在这里插入图片描述

解决办法:

在这里插入图片描述

选择help——>edit custom vm options

在最后一行加入:

-Dfile.encoding=UTF-8

在这里插入图片描述

然后重启Idea

启动成功:

在这里插入图片描述

自动跳转访问

在这里插入图片描述

四、支付测试

选择第一个手机网站2.0支付,继续浏览器支付

在这里插入图片描述

选择右下角支付宝账户支付

在这里插入图片描述

这个是填买家账户,你填沙箱环境的账户和密码即可

在这里插入图片描述

选择沙箱买家账号和登录密码,这个余额你想充多少就充多少,终于可以体验一把土豪的感觉了

在这里插入图片描述

选择确认付款,输入密码

在这里插入图片描述

支付成功,点击完成会自动跳转到你配置的同步验签的地址,不点击的话,等待几秒他也会自动跳转。

在这里插入图片描述

先返回你的沙箱页面,刷新就可以看到你的商家余额有钱了,这里支付宝会收取0.6%的手续费是和真实环境一样的,所以我刚才支付了100而实际收到的是99.4

在这里插入图片描述

在这里插入图片描述

再回到你支付的页面,支付宝同步验签会把你刚才的交易参数给你拼在地址后面,就像这样

在这里插入图片描述

返回的参数包括了,你交易的订单号,买家付款金额等

这里看到验证失败的问题不必惊慌,因为沙箱环境的不稳定性是会存在这个问题的,这个时候你可以通过访问订单查询接口去查看订单是否支付成功

在这里插入图片描述

订单号和支付宝交易号是拼在你刚才验签的地址后面的,找到输入订单号或支付宝交易号任一一个即可查询,查询返回的结果会打印输出在你代码的控制台

订单号: out_trade_no

支付宝交易号 : trade_no

拼接的验签信息较长,建议先复制下来

在这里插入图片描述

我打印了两次,第一次通过订单号,第二次是通过支付宝交易号,返回的信息都是Success,说明是支付成功了的。

在这里插入图片描述

这里给出关于支付宝同步验签通知的详细文档地址和支付返回值:

支付宝同步验签通知的详细文档地址:

https://opensupport.alipay.com/support/helpcenter/193/201602494660?ant_source=zsearch

在这里插入图片描述

更多详细返回值请参考:

https://opendocs.alipay.com/apis/api_1/alipay.trade.wap.pay

到这里基本的支付宝手机网页支付就走通了,网页支付和手机网页支付请求支付流程是差不多的,只是调用的封装不一样,你测试完了之后通过对应文档也可以试试网页支付,也祝你们能一次成功!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值