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下面找静态文件了。因此我们只需要监听这个外网地址即可。
再次测试就成功过了
分类:
谷粒商城
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人