php 苹果支付验证失败的原因,iOS 微信支付报错 支付验证签名失败

可能的原因有两个:

一、传给微信sdk的参数中时间戳的格式错误。

iOS中时间戳的格式要求是32位的int类型

771b5e4487ef?tdsourcetag=s_pcqq_aiomsg

image.png

一般服务器返回的是字符串需要强制转换成32位int类型的值

二、服务器的签名方式错误

微信支付:服务器(Java)统一下单获取prepay_id成功,iOS调用微信sdk提示支付验证签名失败。

原因如下:

微信支付:服务器统一下单获取prepay_id成功,前端公众号里调用jsapi提示支付验证签名失败(签名工具测试签名正确)

这里默认的是签名方式是MD5,前后两个签名方式不一至导致的“支付验证签名失败”。

解决方法:前后两个签名方式调成一致,同时用MD5或同时用HMAC-SHA256。

注意事项:回调的时候也用一致的签名方法!!

我的项目出现的微信“支付验证签名失败”原因就是后端服务器用的demo的加密方式和后面的md5的方式不是一种导致给我参数,我再去调微信sdk的时候出现签名失败。

后来java的后端服务器改成一样的就好了,就可以成功调起微信支付。

稍后会补上我的微信支付测试demo的github地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值