支付验签失败_微信支付提示支付验证签名失败

本文探讨了微信支付验收过程中签名的正确获取方式,包括是否需要每次动态获取及如何使用curl模拟post请求进行测试。

最近也在做微信支付的验收,请问验收的签名,是需要单独写一端代码来获取然后在整个验收期间都不变,还是需要在支付代码里每次都动态获取,直到验收完成,再换成自己的原来的API密钥???这里实在不明白,网上搜了好久也没有相关信息。

我自己写了个小的程序用curl来模拟post行为,始终获取失败

$xml = '开放平台的AppID商户号32位随机数微信支付API的密钥';

$url = 'https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey';

$header[] = "Content-type: text/xml;charset=UTF-8";

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_HTTPHEADER, $header);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_POST, true);

curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

$a = curl_exec($ch);

echo $a;

curl_close($ch);

?>

以下是官网的资料:

https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=23_1 这里看到了获取的说明,但是没说是怎么获取???

获取验签秘钥API:

请求Url https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey

是否需要证书 否

请求方式 POST

请求参数:

字段名 字段 必填 示例值 类型 说明

商户号 mch_id 是 1305638280 String(32) 微信支付分配的微信商户号

随机字符串 nonce_str 是 5K8264ILTKCH16CQ2502SI8ZNMTM67VS String(32) 随机字符串,不长于32位

签名 sign 是 5K8264ILTKCH16CQ2502SI8ZNMTM67VS String(32) 签名值

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值