初衷:
解决支付宝无法本地调试的问题,因为支付宝签约商户时有限制,必须在签约的域名上测试支付宝的支付结果。如果直接返回商户的则不需要服务器上调试,但是支付宝的异步通知,必须要在公网上才可以调试,所以每次需要打个war包,放到服务器上去调试,出现了问题页不易发现,不易解决。所以构思了能不能在本地调试支付宝的异步通知方法。
正文:
一、实现的效果
可以本地调制支付宝的onCallBack异步回调方法
二、需要用到的工具
内网穿透工具:natapp。
一台服务器需要装好nginx。
三、使用方法
1、在https://natapp.cn/ 创建账号,并进入到我的后台。
2、购买免费通道
3、配置隧道的端口,因为要测试支付宝回调,默认80就可以。
4、点击免费购买,进入此页面,并记住authtoken
5、下载Mac OS X 64位,将下载后的压缩包解压到本地没有中文的路径下。
http://download.natapp.cn/assets/downloads/clients/2_2_0/natapp_darwin_amd64_2_2_0.zip
6、打开终端,给解压出来的软件授权。输入此命令回车
chmod a+x [color=red]你的目录[/color]/natapp
7、在终端中运行此软件输入此命令,红色部分为上面第4条的authtoken,回车。
8、出现以下界面,表示成功,并复制红色框中的地址。不要关闭终端。
三、支付宝签约的域名,分配出一个子域名,并指向到服务器ip上。
比如:alipay.xxx.com 。下面需要把这个地址配置到nginx中
四、配置服务器端的nginx
1、在linux服务器上安装好 nginx,具体的安装方法请百度。
2、配置nginx的配置文件 nginx/conf/nginx.conf。蓝色框内为整个配置,把上面第二.8条中复制的地址粘贴到红色框处,并把nginx重启。
五、需要把本地工程中的onPay方法(就是支付宝生成付款html的方法)中的notify_url(异步通知url)的前置域名定死成上面第三步的子域名。
六、调用测试前。
1、将支付宝去付款需要传的商户号等配置好。
2、用第三步分配出的子域名访问就可以了。
- 浏览: 26893 次
最新评论
-
gao2008ss:
功能完成度最高的是 巡云商城,使用起来相当方便。
盘点国内5大Java开源网店系统 -
马苏大马哈鱼:
和LegendShop合作了很久,感觉还行,售后比较周到,有问 ...
盘点国内5大Java开源网店系统 -
yunano:
我们现在的项目是基于shop++ B2B2C做的二次开发,总体 ...
盘点国内5大Java开源网店系统
相关推荐
7. **回调处理**:为了保证交易的可靠性,支付宝还提供了异步回调机制,即退款完成后,会向商户配置的回调地址发送通知。你需要编写一个接收并处理回调的Controller,验证签名,确认退款状态,并更新数据库中的订单...
6. **示例代码(Demo)**:项目中提供的示例代码可以帮助开发者了解如何调用支付宝SDK进行支付操作,包括发起支付请求、处理异步回调等关键步骤。 7. **前端展示页面**:为了生成二维码供用户扫描,项目可能包含一...
4. **订单创建**:在支付流程中,首先需要在服务器端创建一个订单,包含商品信息、金额、回调URL等。Java代码会演示如何构造请求参数并调用`alipay.trade.page.pay`接口来生成支付页面的链接。 5. **前端集成**:...
这通常涉及到调用支付宝的`alipay.trade.precreate`接口,传入商品信息、订单金额、回调URL等参数,生成预支付交易的二维码或一维码。 3. **生成二维码或一维码** 一旦得到预支付订单的响应,你可以使用Java的第三...
4. **请求构造**:调用接口时,需要构造符合支付宝规范的请求参数,包括但不限于商品标题、金额、交易类型(即时到帐)、回调URL等。这些参数必须按照规定的顺序和格式组织。 5. **交易处理**:提交请求后,支付宝...
- **支付处理**:用户在支付宝页面完成支付后,支付宝服务器会回调商家设定的回调地址,传递支付状态等相关信息。 5. **异步通知与同步确认** - **同步确认**:用户支付成功后,页面会自动跳转回商家指定的页面,...
4. **处理回调通知**:当用户完成支付后,支付宝会向开发者指定的回调URL发送异步通知,告知交易状态。开发者需要接收并验证这些通知,确保交易的真实性和完整性。 5. **同步查询**:为了防止因网络问题未收到回调,...
2. **异步通知**:为了确保交易状态的准确性,支付宝会向开发者提供的回调URL发送异步通知。开发者需要设置对应的Controller来接收并处理这些通知,更新订单状态。 3. **错误处理**:在调用支付宝接口时,可能会...
4. **异步通知与同步跳转**:支付宝有两种通知方式,一种是同步跳转(即页面立即返回到指定URL),另一种是异步通知(支付宝服务器会向设置的回调URL发送POST请求)。为了保证交易的可靠性,通常需要同时处理这两种...
开发者需要编写代码处理这些步骤,比如生成预支付订单、跳转到支付宝支付页面、处理异步回调的支付结果。 4. **签名算法**:为了保证数据安全,支付宝使用了签名机制。Java源码中会有对请求参数进行签名和验证响应...
- 支付宝提供了两种通知方式:同步通知(页面跳转)和异步通知(POST数据到指定的回调URL)。Java Demo会展示如何处理这两种通知,确保交易成功后能正确更新订单状态。 5. **页面跳转与页面渲染**: - 当用户完成...
7. **回调通知(notify_url)**:当支付状态改变时,如支付成功或失败,支付宝会主动发送通知到开发者指定的回调URL。开发者需要在服务器端处理这些通知,更新订单状态,避免因为网络等原因导致的订单状态不一致。 ...
6. **页面跳转与回调处理**:在用户完成支付后,支付宝会通过异步通知(notify_url)或同步跳转(return_url)的方式将支付结果返回给商户。Java Demo中会包含处理这些回调的逻辑,例如验证通知的合法性、更新订单...
支付完成后,支付宝会自动向设置的回调URL发送异步通知,Java后端需要监听这个接口,解析并验证通知内容,更新订单状态。同时,前端也可以通过轮询或长连接的方式查询支付状态。 6. **退款接口**: 当需要退款时...
3. **构建请求参数**:根据支付宝API文档,构造请求参数,包括商品信息(如名称、价格)、订单号、回调URL等。这些参数需要按照指定格式进行编码和排序,然后用私钥进行签名。 4. **调用API接口**:使用HTTP客户端...
通过分析源码,可以学习到如何封装API调用,处理异步回调,以及如何确保支付过程的安全性。源码通常包括支付请求的构建、签名生成、回调验证等核心部分。 5. **支付流程**:集成支付宝接口涉及到的主要流程包括: ...
这个压缩包文件"支付宝app支付,网页扫码,退款,查询订单,回调.zip"包含了一系列与支付宝支付相关的源代码和配置文件,用于实现从应用程序(App)到网页的各种支付功能,包括订单支付、扫码支付、退款处理以及订单...
6. **回调处理(notify_url)**:回调URL接收到支付宝服务器发送的异步通知,需要解析并验证通知内容的签名,然后更新订单状态,如标记为已支付。这个过程必须是幂等的,防止因网络问题导致重复处理。 7. **查询...
4. 实现异步回调(notify_url)处理,验证支付宝返回的数据,更新订单状态。 5. 集成支付宝的退款接口,处理退款请求。 至于银联支付,其接口调用流程如下: 1. 在银联开放平台注册并获取商户号、证书等必要信息。 ...
Java支付宝沙箱教程主要讲解如何在SpringBoot框架中集成和测试支付宝的支付功能,通过模拟真实支付环境,确保在不影响实际生产环境的情况下进行开发和调试。 1. **支付宝沙箱环境** - **测试环境**:支付宝沙箱...