小程序
小游戏
企业微信
微信支付
扫描小程序码分享
调用微信支付的上传的参数都是都是服务端传过来的,可是同样的参数,安卓没有问题,而ios总是报“支付验证签名失败”
5 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
请按照以下几点进行排查:
1、使用签名检查工具(https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=20_1)校验签名算法是否有误
2、确认秘钥是否有误(服务商模式使用服务商商户号秘钥,秘钥是在商户平台配置,如果同一商户号调用其它接口成功可排除是秘钥问题)
3、确认接口实际的请求参数与生成签名原串的参数一致,不能增加或缺少参数(可通过打印签名原串进行排查)
4、确认参数的大小写,参数名与接口文档一致
5、签名原串的参数值使用原始值,不需要encode
6、接口需要使用UTF-8编码
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
我也是同样的问题,安卓可以,ios报签名错误。试了上面说的把sign改成MD5和123456都不行。
最后发现是ios的时间戳只支持到秒,而我返回的时间戳精确到毫秒,所以只要把时间戳毫秒去掉就可以了。
你们最后怎么弄的呀
解决了吗
麻烦咨询一下,可不可以发邮件把我们的问题帮我们解决一下啊。具体问题出在哪里,给一个明确的提示!
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
请按照以下几点进行排查:
1、使用签名检查工具(https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=20_1)校验签名算法是否有误
2、确认秘钥是否有误(服务商模式使用服务商商户号秘钥,秘钥是在商户平台配置,如果同一商户号调用其它接口成功可排除是秘钥问题)
3、确认接口实际的请求参数与生成签名原串的参数一致,不能增加或缺少参数(可通过打印签名原串进行排查)
4、确认参数的大小写,参数名与接口文档一致
5、签名原串的参数值使用原始值,不需要encode
6、接口需要使用UTF-8编码
只需要把文档里需要穿的 sign 字段,把 signType 赋值给他,即可!!!
request.sign= "MD5"; 可正确调用
request.sign= "B44798F263C0F4XXD8AB65F0XXE904F4"; 报错: 支付签名验证失败
我也是同样的问题,安卓可以,ios报签名错误。试了上面说的把sign改成MD5和123456都不行。
最后发现是ios的时间戳只支持到秒,而我返回的时间戳精确到毫秒,所以只要把时间戳毫秒去掉就可以了。
你们最后怎么弄的呀
解决了吗
麻烦咨询一下,可不可以发邮件把我们的问题帮我们解决一下啊。具体问题出在哪里,给一个明确的提示!