关于微信公众平台支付的问题,耗时整整24小时,一直在纠结,几乎是一个字母一个字母的查看参数是否正确。是的,我已经在开始怀疑人生了。直到在无数篇文章中看见了http://blog.csdn.net/triplestudio/article/details/77930105。

开发语言   java   使用官方下载的sdk

关于支付调取失败的问题有很多,授权目录,签名时参数名称区分大小写(签名参数都是使用托分规则),甚至考虑是不是你once_str也需要使用回调的,各种猜想,各种尝试。。。。微信官方给出的签名工具生成的签名和我的一样,理应排除签名错误。可是没办法,同样报错,签名不正确。

无意间,我看见过这样一句话,如果生成的签名和官方工具相同,但是还是提示签名不正确,那么你得考虑是不是你的参数不正确。

prepay_id是我排除的第一个参数,这是调用接口生成的,我想应该不会错。接下来,我反复修改了商户支付平台的秘钥,也就是签名需要的key值,得到的结果任然是签名错误,我又把随机字符串nonceStr改成后台传过来的,答案还是这样。我排除了两个参数,key和nonceStr,我又对appId反复确认,timeStamp一位一位的数,看是不是十位,我都快不相信电脑的复制功能了,我怀疑会复制不正确。最后我排除所有的字段,应该都是正确的,但是我任然不能调起支付。同样的提示,签名验证失败。

最后,我在上面的文章中看见了一个对prepay_id不正确的肯定,我仿佛看见希望之光。对,没错了,排除了所有可能,最后一个就一定是答案,prepay_id有问题。http://blog.csdn.net/triplestudio/article/details/77930105文章指出,由于最新sdk调用统一下单的时候sign_type是置为 HMAC-SHA256 而不是使用默认的 MD5。我去仔细看了源码,原因在于,默认不适用沙箱环境,沙箱环境下使用的签名方式是MD5,而非沙箱环境下,使用的是HMAC-SHA256.

上面代码修改为

无论什么环境,都是用MD5加密方式,ok,成功唤醒支付。可以碎觉了

微信公众平台支付 一直提示签名认证失败,签名对比正确,却提示签名不正确,关于prepay_id造成签名验证不正确的问题相关推荐

  1. 微信公众平台开发者中心服务器配置Token验证失败问题

    微信发展如火如荼,没有哪家的企业营销能避开微信不谈的,那像我们这种给客户实施项目的多多少少会涉及微信端的开发,本文只要给从未做过微信开发的人做一些简单的演示,行家里手们可以呵呵一下该干嘛干嘛去了. 微 ...

  2. 微信公众平台支付接口调试工具

    https://pay.weixin.qq.com/wiki/tools/signverify/

  3. 微信公众平台开发测试账号配置URL失败的问题

    配置URL的时候老提示失败,如下图: 解决的办法是:由于我的WSServlet的doGet()方法里面没有返回微信请求的随机字符串 ,在doGet里面添加如下代码 就可以 // 微信加密签名     ...

  4. php微信公众号支付实例教程,php微信支付之公众号支付功能

    这篇文章主要为大家详细介绍了php微信支付之公众号支付功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 网上的很多PHP微信扫码支付接入教程都颇为复杂,且需要配置和引入较多的文件,本人通过整理后 ...

  5. 微信公众号支付的坑,我已经帮你踩过了(JAVA)

    简单介绍微信公众号支付的申请.接入.使用.支付等相关流程,具体会调到微信的授权登录.支付以及关单等api,里面会着重提到需要注意的坑. 1. 准备阶段: 申请 申请步骤请直接查看微信公众平台官方文档 ...

  6. 微信公众平台账号找回方法

    问题:由于长时间未登录账号,导致账号冻结,在登录时提示密码不正确,点击修改密码提示邮箱未注册,注册时提示邮箱被占用,其实是因为账号被冻结了 解决方案: 1.微信关注"公众平台安全助手&quo ...

  7. java微信公众号支付开发平台_Java微信公众平台开发之公众号支付(微信内H5调起支付)...

    官方文档 准备工作:已通过微信认证的公众号,必须通过ICP备案域名(否则会报支付失败) 借鉴了很多大神的文章,在此先谢过了 整个支付流程,看懂就很好写了 一.设置支付目录 在微信公众平台设置您的公众号 ...

  8. 微信公众平台开发(2)--微信认证流程图文详解

    点此查看 微信公众号/微信网页/微信支付/企业微信/小程序开发合集及源代码下载 本文目录 1. 微信认证的作用 2. 登录 3. 开始认证 4. 认证流程 4.1 准备资料 4.2 同意协议 4.3 ...

  9. 微信支付(公众号支付)微信公众平台开发教程(5)

    简介 Senparc.Weixin SDK 是由盛派网络(Senparc)团队自主研发的针对微信各模块的 开发套件(C#SDK), 已全面支持微信公众号.微信支付.企业号.开放平台.JSSDK.摇一摇 ...

最新文章

  1. docker desktop ubuntu镜像_资深专家都知道的顶级 Docker 命令!
  2. 像数据科学家一样思考:12步指南(上)
  3. Tomcat集群和Session共享的配置方法
  4. shell判断进程使用CPU时间后kill进程
  5. Lua Script - 初次接触
  6. 数据可视化网页内容自动抓取工具
  7. loacallhost:80被占用解决方法
  8. 尔雅网络选课 大学计算机知识,2017-2018学年第1学期超星尔雅网络课程选课指南.PDF...
  9. 点击验证码时候自动刷新功能
  10. 螺旋分级机与水力分级机间的优缺点
  11. linux cp -r 参数,Linux cp命令参数简介
  12. js中如何判断undefined
  13. 如何比较两个文本的相似度
  14. 操作系统进程实验课程设计
  15. 计算机拆机步骤图解,华硕x50拆机步骤图解【图文】
  16. iomanip头文件
  17. 小程序canvas头像不显示解决办法
  18. 从零到一的react.js+node.js+express.js+mysql产品开发全流程
  19. 帝国理工计算机科学硕士学费,帝国理工学院硕士2021年学费贵吗?100多个专业供你参考!...
  20. envi反演水质参数_ENVI5.2中基于MODIS数据的海表温度反演

热门文章

  1. cdm 图片 转_powerdesign中将cdm转化为pdm
  2. java 队列已满_JAVA中常见的阻塞队列详解
  3. 【飞项】定制你的专属日程管理管家拒绝行动的矮子
  4. stm32f407 四路pwm输出_STM32之---PWM
  5. SLB 负载均衡实践
  6. 查询客户时,提示“查询已超出200行,请限制查询“
  7. ssm校园拼车服务系统毕业设计源码211633
  8. cmos管宽长比,OC, OD门和线与逻辑,传输门,竞争冒险,三态门
  9. <Zhuuu_ZZ>那些年我们踩过的Hadoop HA的坑--高可用集群
  10. 「镁客早报」屠呦呦入选“20世纪最伟大人物”;四部门联合治理APP违法收集使用个人信息...