前段时间,公司业务需要。支付部分开始接入微信H5支付,遇到多个坑,耽误了不少时间;

第一个坑:

产品同学负责申请开通H5支付,因为在申请阶段填写过H5支付域名。并将H5支付域名和开发配置中的授权域名混为一谈,造成开发人员在测试支付时候一直无法通过,报错误:商家参数格式有误,请联系商家解决。在将近一天的调试后,才确认授权域名没有配置,并在配置授权域名后一次性测试通过。

第二个坑:

在统一下单阶段,微信H5支付需要的参数包括客户端的真实IP,即spbill_create_ip。QA在手机浏览器测试时候,使用7,8个常用浏览器测试,QQ浏览器无法调起微信APP,并报错误:网络环境未能通过安全验证,请稍后再试。我们尝试通过在QQ浏览器中打开百度获取客户端IP和服务器获取IP进行对比,发现两个IP不一致,而其他浏览器不会有这个问题。后来通过和运维调试发现,用户的请求从QQ浏览器发出后,经过了一次正向代理,而我们的nginx取了这个代理IP填入 x-real-ip,造成我们一直无法获取用户的真实IP。知道原因后,我们放弃从x-real-ip中获得客户端的IP,改从x-forwarded-for中取IP字符串中的第一个IP,解决了该问题。这个问题也让我们调试了大半天,而且在网上也找不到相关答案。

参考文章: X-Forwarded-For 和 X-Real-IP 的区别?

微信H5(WAP)支付,遇到的那些坑相关推荐

  1. 微信html5 支付接口,黄聪:详解申请微信h5支付方法,开通微信h5网页支付接口(转)...

    现在大街小巷的商家都在使用微信支付, 但是一些商家使用的是个人微信收款, 这个虽然很便利, 但是如果你想要数据统计汇总, 让客户在网络上在线付款, 就需要用到微信的h5支付. 微信h5支付 今天子恒老 ...

  2. 详解申请微信h5支付方法,开通微信h5网页支付接口(转)

    现在大街小巷的商家都在使用微信支付, 但是一些商家使用的是个人微信收款, 这个虽然很便利, 但是如果你想要数据统计汇总, 让客户在网络上在线付款, 就需要用到微信的h5支付. 微信h5支付 今天子恒老 ...

  3. Asp.net 微信H5唤起支付和支付回调

    做任何商城类的项目都离不开支付这一环节,今天就记录一下在开发微信H5支付时的开发过程 在开发到订单这部分模块的时候终于遇到了微信开发第二个难题,微信支付! 首先请阅读 微信JSAPI支付文档  和 微 ...

  4. 【快应用】微信H5 referer支付未拉起微信收银台

     现象描述 快应用使用微信H5 referer方式支付, wxpay.pay调用后回调success得到url,但并未拉起微信收银台,无法支付.另外,应用微信h5支付都是通的,在浏览器端是可以直接支付 ...

  5. 【IOS invalid signature】记录一次微信H5跳转小程序的坑

    今天开发微信H5页面跳转小程序,安卓和开发者工具都没问题,IOS第一次进入会报错验签失败,我的是vue项目. 实测添加一行代码解决,只传原始地址,不能传完整url,看其他人什么刷新,什么判断都无效 l ...

  6. spring boot微信h5,native支付 APIV3

    因为本人比较懒 不想写太过于理论的东西 所以直接开始上操作 微信APIV3支付 开始上操作了 支付前准备 APP_ID:应用id MchId : 商户号 privateKey :私钥字符串 mchSe ...

  7. 微信H5公众号获取openid爬坑记

    前要: 之前做过的公众号授权一般是在登录时的,最近遇到一个直接微信打开企业微信发过来的链接进去预约页面,需要进来时查询当前微信的用户有没有预约过对应的申请,如果有就跳转到index的列表页,没有的话留 ...

  8. React Native 0.44.3 ----------微信h5支付

    本篇记录ios使用ReactNative完成微信h5支付的一些注意事项. a. 支付完成或者取消微信h5支付,会跳转到手机默认的浏览器中(safari),无法回到原App. b. 如何获得支付状态?? ...

  9. 微信H5支付demo

    近来对支付来点兴趣,搞了一个微信H5的支付demo供大家参考一下. @RequestMapping(value ="/H5",method = {RequestMethod.POS ...

  10. 微信开发-微信分享和支付模块代码记录

    文章目录 微信H5开发[分享模块] 写在前面 准备工作 微信后台配置 获取配置微信环境的参数 引入weixin-js-sdk 分享配置源码 启动以后日志显示OK即可 注意事项 微信H5开发支付模块 需 ...

最新文章

  1. VC运行时库(/MD、/MT等)
  2. linux rpm mysql 路径_linux基础-linux 下 安装 rpm 格式 的 mysql
  3. 【STM32】端口复用和重映射,完全重映射,部分重映射
  4. 最近看的电影(乱谈)
  5. 复旦高等代数 II(17级)每周一题
  6. sys_connect_by_path 用法
  7. c语言学习-输入一个十进制数,输出其对应的八进制数据
  8. javascrip学习之 数据类型和变量
  9. lambda表达式python_你为什么要用lambda表达式?理解它你就知道了
  10. 超声波的四个特性_超声波传感器,超声波的特性
  11. fatal error LINK1123:failure during conversion to COFF:file invalid or corrupt
  12. 编写一个函数itob(),将整数n转换为以b进制的数,保存到s中
  13. 基于麻雀算法改进的随机森林分类算法 - 附代码
  14. 关于微信开发者工具终端窗口不能输入字符问题
  15. 朴素贝叶斯0概率时不进行拉普拉斯平滑与进行了拉普拉斯平滑后正确率对比(德国信用卡案例)
  16. 机器学习与Web安全结合的基础
  17. 多旋翼无人机构成及其原理详解
  18. python12306抢票_python实现12306抢票
  19. 5年后、10年后,你希望自己是个什么样的人?
  20. Eclipse读取properties文件中文乱码问题

热门文章

  1. idea 检测 重复代码_重复代码检测
  2. 通信-RS232、RS485、RS422
  3. 机械振动的傅里叶变化分析技术
  4. Altera下载器使用说明 Intel(Altera)FPGA高速下载器线PL-USB2-BLASTER中文详细使用手册
  5. 电力系统同步发电机励磁系统的建模与仿真
  6. CAD软件中怎么计算雨水?CAD雨水计算技巧
  7. YUI Compressor Maven
  8. [转载]U盘文件夹乱码无法删除的原因及解决方案
  9. WPS Office 绿色版|WPS Office 2019绿色专业版下载 v11.8.2.8053(免注册)
  10. 超实用ExtJS教程100例