Discuz3.2插件添加微信扫码支付模式二失败分析
来源:互联网 发布:java 生成pdf表单 编辑:程序博客网 时间:2024/05/16 02:23
前些天因为公司有一些业务需求,需要往Discuz插件里添加微信扫码支付的功能,毕竟之前做过微信支付这一块,觉得应该不会花太久,但事实是,直接击穿了我的玻璃心
扫码支付二流程
1.开通微信公众号后设置扫码支付 地址为 https://mp.weixin.qq.com
开通扫码支付二,不用在公众号设置支付回调,可以在代码里面添加回调通知
2.生成支付二维码
3.支付成功回调处理
由于微信官方缺乏测试调试工具,我多次分析无果只好硬着头皮用了第三方集成支付SDK点击打开链接,启动调试模式发送消息时返回错误提示信息,根据提示内容我去
source\class\discuz\discuz_application.php 找到
可以发现底层处于安全性的考虑,把部分带有特殊标记的原生数据给截断掉,导致回调已经发送却中途丢失的情况。经处理,改为
$temp = strtoupper(urldecode(urldecode($_SERVER['REQUEST_URI']))); if(strpos($temp, '<') !== false || strpos($temp, '"') !== false || strpos($temp, 'CONTENT-TRANSFER-ENCODING') !== false) {system_error('request_tainting'); } return true;
0 0
- Discuz3.2插件添加微信扫码支付模式二失败分析
- 微信扫码支付 模式二
- 微信扫码支付模式二
- thinkphp微信扫码支付模式二
- discuz3.1添加diy模板
- LAMP5-杂项+Discuz3.2
- PHP discuz3.2 cas
- discuz3.2开启压缩
- 微信扫码支付模式二支付状态Ajax轮询实例
- 微信扫码支付(native)模式二
- 微信扫码支付---模式二(Native)
- CI框架 微信扫码支付模式二
- 微信扫码支付模式一和模式二的区别
- JAVA微信扫码支付模式二功能实现以及回调
- JAVA微信扫码支付模式二功能实现以及回调
- JAVA微信扫码支付模式二功能实现以及回调
- JAVA微信扫码支付模式二功能实现以及回调
- JAVA微信扫码支付模式二功能实现以及回调
- 网页0秒后跳转新页面
- Java学习笔记---保留小数后两位不进行四舍五入
- 解决maven下载慢的方法-国内镜像
- android-drawable/mipmap&Drawable实例的多种创建方式&Theme和Style的区别。
- 修改SpirngBoot默认的banner
- Discuz3.2插件添加微信扫码支付模式二失败分析
- Scala 访问修饰符
- Python进阶之使用@property
- 每天一个linux命令(31): chown命令
- Sqlite从初级认知到高级操作
- Unity3D研究院之通过C#使用Advanced CSharp Messenger(五十)
- Jquery动态增加行和删除行的操作
- pip 安装错误 ‘ascii’codec can't decode byte 0xd6.....
- 深入解析棋牌湖南放炮罚,跑胡子手游源码(java版)