优雅的处理微信支付通知回调

处理背景

初始版本的微信回调实现处理

此种处理回调没有问题,但是如果场景过多,如商城订单支付,会员开通支付,续费支付等等业务场景,都需复写上述操作,

把会变化之处独立出来,把不需要变化的抽离出来,各是各,分开写

由上分析可看出这是一个典型的环绕处理,而环绕操作就是不需要变化的部分,每个支付的场景就是变化之处,可以采用切面来完成,处理方式,初步考虑基于注解来处理业务处理前置操作和后置操作,但思考过后发现缺失灵活性,于是决定采用策略模式通过接口来解决此问题

改动

1.上述代码把xml字符串单独抽离出来,已类变量方式存在,定义构建方法赋值xml字符串
2.定义微信回调处理接口
3 定义处理处理结果接口,赋值xml同时在赋值接口信息,然后面向接口开发,不是面向实现类
4调用

优点

自此完成,相对之前

系统更有弹性,

代码整洁度提高,在后期维护也更方便

经验分享 程序员 微信小程序 职场和发展