微信支付接入签名错误问题
1个回答
展开全部
接入微信支付 发放普通红包 接口时,明明签名是验证通过的,却提示签名错误,微信给出四点原因:
1、没有使用商户平台设置的商户API密钥进行加密(有可能之前设置过密钥,后来被修改了,没有使用新的密钥进行加密)。
2、加密前没有按照文档进行参数排序(可参考文档)
3、把值为空的参数也进行了签名。可到(http://mch.weixin.qq.com/wiki/tools/signverify/ )验证。
4、如果以上3步都没有问题,把请求串中(post的数据)里面中文都去掉,换成英文,试下,看看是否是编码问题。(post的数据要求是utf8)
这四点都满足了,通过每次写的xml数据用 微信支付接口签名校验工具 验证都是通过,可是发请求返回的总是签名错误。
找了一小时,终于找到了原因,发请求total_amount填的是1.5,误以为单位是元,其实total_amount的单位是整型,单位是分。
将total_amount改为整型即可。
1、没有使用商户平台设置的商户API密钥进行加密(有可能之前设置过密钥,后来被修改了,没有使用新的密钥进行加密)。
2、加密前没有按照文档进行参数排序(可参考文档)
3、把值为空的参数也进行了签名。可到(http://mch.weixin.qq.com/wiki/tools/signverify/ )验证。
4、如果以上3步都没有问题,把请求串中(post的数据)里面中文都去掉,换成英文,试下,看看是否是编码问题。(post的数据要求是utf8)
这四点都满足了,通过每次写的xml数据用 微信支付接口签名校验工具 验证都是通过,可是发请求返回的总是签名错误。
找了一小时,终于找到了原因,发请求total_amount填的是1.5,误以为单位是元,其实total_amount的单位是整型,单位是分。
将total_amount改为整型即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询