122、商城业务---订单服务---支付宝异步通知内网穿透环境搭建

支付宝支付成功后有一个同步通知和异步通知

在同步通知里面我们进行了支付成功后跳转到订单列表的页面跳转

支付宝还会给我们异步通知,发送消息。但是我们的地址域名是在本机的host文件配置的,只是起到一个模拟作用。如果还用http://order.gulimall.com/alipay/notify,支付宝会请求不到我们的网址或者请求到别人的同域名的网址。因此就需要进行内网穿透,让支付宝可以访问到我们本机请求。

1、首先配置natapp

注意我们的order.gulimall.com已经在host文件中配置了映射,会直接映射到我们的虚拟机。

2、配置支付宝的异步回调地址

3、测试,发现并不能访问成功

原因是内网穿透软件不是浏览器,他给我们的请求没有请求头,即使有请求头也是外网的请求头,因此不能匹配到我们的服务,流程图如下

解决办法:
进行请求的精确匹配,只要是/alipay/notify请求,他就是订单服务的请求
修改我们nginx的配置文件:


当请求为/alipay/notify时,会直接转给Host为order.gulimall.com的网关路径。
我们的网关配置如下

记得重启nginx
记得支付宝的异步通知是post请求,用postman测试

当我们进行测试时,发现还是404

查看nginx的错误日志

通过日志可以看出,它带上了host,不过是外网的host,但是它去html下面找静态文件了。因此我们只需要监听这个外网地址即可。

再次测试就成功过了

posted @   不是孩子了  阅读(141)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示