支付结果回调参数调试的解决方案
前言
做支付宝网页支付的同学都会遇到一个问题,支付宝平台的支付结果异步回调很难调试,因为这个回调是反馈到部署的外网环境的,而开发环境没有对外独立ip,开发环境在编写支付后续的逻辑代码就显得很困难,如果能让支付宝平台的回调请求到开发环境来,边调试边开发就爽YY了。本文将提供两种解决方案,方案2的提供相关源代码,以方便用到的各位同学。
方案一
路由器内网映射,在路由器上配置,将内网的某个ip和端口与外网的某个端口映射绑定。当请求外网的映射端口时,会请求到内网映射的ip和端口,这个方案最简单,但有两个局限:一是部分的路器器不支持和多层路由时可能失败;二是只能请求到内网的一个固定ip,也就是一个开发者。
方案二
自己写代码实现数据转发,监听服务部署在公网上,接收支付宝的回调,然后把请求内容转发给内网的多个开发者开发环境中,每个开发者都可以下断调试;这个解决方案由PayProxy和PayClient两部分组成,PayProxy部署在公网,提供Http给支付宝和TCP服务给PayClient,PayClient运行在开发者机器上,用于接收PayProxy发过来的支付结果参数数据,并把这些参数合成一个Http请求,请求到开发者的本机IIS上,开发者就可以使用VS等附加IIS进程下断看了。这个文案要求开发者在IIS里建一个站点,文件目录指到开发目录,调试的时候,使用附加IIS进程调试(实际上我的开发环境都是这样调试,一般不使用直接启动VS里的项目来调试,觉得启动耗时!)。
开源&贡献
如里我的努力同时能给别人带来生产力,这是我很高兴的,所以我也不吝啬把这些举手之劳的东西开源出来,说不定大家在这上面还能挖出使用到其它领域的作用。
https://github.com/xljiulang/PayProxy
老九20151009
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?