本文仅适合Javashop 7.0 版本
需求:拿到商城代码之后小程序支付成功以后库里面没有记录
说明:下面内容属于二次开发内容,不受技术支持。
问题:
原因:
一个大坑,因为7.0 微信支付callback是动态取的,7.02 是配置里面写死域名的,如果使用动态取地址,必然会出现取到IP地址而不到真实域名地址情况,如果回调地址错误,微信是有域名白名单设置,非设置域名肯定无法调用,所以无支付记录,需要代码里面写死
修改文件列表:
com.enation.app.javashop.core.payment.service.AbstractPaymentPlugin
说明:
经常见网站教用JSP request动态取服务器地址、域名这些。
这个方法有个很大BUG,就是假如网站(可以告诉你们,一般大点网站肯定)有多个域名或者IP,这种方法就只能取某个IP,这样很容易把错的地址给微信,微信是有域名白名单设置,非设置域名肯定无法调用,所以一般方法就是写个通用配置变量类写死域名而不是动态取服务器地址、域名。