微信公众号红包接口开发PHP开发 CA证书出错,请登陆微信支付商户平台下载证书

微信红包接口调试过程中一直提示“CA证书出错,请登陆微信支付商户平台下载证书”,经反复调试,大致解决方法如下:

1.首先确保CA证书的路径是否正确,一定得是绝对路径,因为是PHP开发的,这里需要三个pem证书

2.确保服务器支持,新浪云的sae,经测试支持不是很好,一直报错,换用其他服务器后,一次通过

POST红包证书的代码部分如下:

function post( $strXml) {

$url=‘https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack‘;

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);

//因为微信红包在使用过程中需要验证服务器和域名,故需要设置下面两行
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true); // 只信任CA颁布的证书
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); // 检查证书中是否设置域名,并且是否与提供的主机名匹配

curl_setopt($ch, CURLOPT_SSLCERT,‘/var/www/html/hongbao/apiclient_cert.pem‘);
curl_setopt($ch, CURLOPT_SSLKEY,‘/var/www/html/hongbao/apiclient_key.pem‘);
curl_setopt($ch, CURLOPT_CAINFO, ‘/var/www/html/hongbao/rootca.pem‘); // CA根证书(用来验证的网站证书是否是CA颁布)

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $strXml);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$res = curl_exec($ch);
curl_close($ch);
return $res;
}

时间: 2024-10-10 22:12:06

微信公众号红包接口开发PHP开发 CA证书出错,请登陆微信支付商户平台下载证书的相关文章

解决问题:CA_ERROR证书出错,请登录微信支付商户平台下载证书-企业付款到零钱接口(原创)

这几天用到了微信企业付款到零钱这个接口,结果出现了报错:CA_ERROR, 该接口的API说明和报错提示说明:https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_2 通过看提示知道原因大概在:请求没带商户API证书或带了错误的商户API证书. 然后我自己查看了我发post请求的地方,汗,果不其然,有个控制是否携带API证书的地方我设置了不携带false. 修改为ture,然后检查下证书路径,测试OK. 原文地址:

微信公众号调用接口返回码

返回码 说明 -1 系统繁忙,此时请开发者稍候再试 0 请求成功 40001 获取access_token时AppSecret错误,或者access_token无效.请开发者认真比对AppSecret的正确性,或查看是否正在为恰当的公众号调用接口 40002 不合法的凭证类型 40003 不合法的OpenID,请开发者确认OpenID(该用户)是否已关注公众号,或是否是其他公众号的OpenID 40004 不合法的媒体文件类型 40005 不合法的文件类型 40006 不合法的文件大小 4000

微信公众号测试号申请及本地开发环境配置

一.公众号测试号申请 测试号申请直接打开此https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo链接,用微信扫二维码即可登录.登录之后填写好这些信息,下面的域名,我用的是测试地址的域名,如下图: /account/verify对应的代码如下,这里面我省略了验证签名和echostr进行对比,直接输出echostr(你不会写还是太懒了:). 这样接口配置信息就验证通过了.用微信扫描测试公众号的二维码,即可关注自己的公众测试号.然后自己创建公众号菜单. 二

微信公众号卡券接口提示签名错误解决办法

现有的微信卡券接口文档中,签名是用api_ticket作为加密参数,但使用api_ticket会提示“签名错误”,导致卡券无法正常领取, 解决办法是把api_ticket替换为公众号的appSecret即可,如下: $signature  = sha1($timestamp.$api_ticket.$card_id); 改为: $signature  = sha1($timestamp.$appSecret.$card_id); 此为老版本的加密方式,虽说微信官方已经发布了新版本,但目前依旧无法

关注PHPthinking官网微信公众号——红包来袭

欢迎大家扫描关注PHPthinking官方微信订阅号,我们将给您定期发送质量博文.新闻趣事.网站公告等等,同时还有PHPthinking准备的每日微信红包(金额不等,已发出百元红包)等着你! 官网地址:http://www.phpthinking.com/

关注PHPthinking官网微信公众号——红包拿走

欢迎大家扫描关注PHPthinking官方微信订阅号,我们将给您定期发送质量博文.新闻趣事.网站公告等等,同时还有PHPthinking准备的每日微信红包(金额不等,已发出百元红包)等着你! 官网地址:http://www.phpthinking.com/

微信公众号jssdk接口总结

常用接口: 分享到朋友圈 分享给朋友 分享到qq 分享到腾讯微博 隐藏菜单功能 特殊接口 图像接口 语音接口 地理位置接口   包含地图接口和位置接口 功能类型接口 扫一扫 语音识别 微信小店 微信卡券 网络状态接口

玩玩微信公众号Java版之二:接收、处理及返回微信消息

前面已经配置了微信服务器,那么先开始最简单的接收微信消息吧~ 可以用我们的微信号来直接进行测试,下面先看测试效果图: 这是最基本的文本消息的接收.处理及返回,来看看是怎么实现的吧! 首先可以参考微信消息相关的接口文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140453 具体实现如下: 第一步,接收微信发送的文本消息入口: 1 /** 2 * 处理微信服务器发来的消息 3 */ 4 public void doPost

微信公众号可通过现金红包接口发放微信支付现金红包(附开发教程)

农历新年将至,支付宝红包打了一仗,微信在朋友圈屏蔽了它的分享,但单防守还不行,进攻才是最好的防守.昨日,微信支付现金红包接口正式开放,只需开通微信支付,即可接入现金红包.微信公众号也可以发放现金红包了! 通过现金红包接口,公众号开发者可以策划相关运营活动,向用户发放微信支付现金红包,更好的达到品牌推广及回馈用户的效果. 1.商户调用接口时,通过指定发送对象以及发送金额的方式发放红包,这样的方式,允许商户灵活的应用于各种各样丰富的活动场景 2.领取到红包后,用户的资金直接进入微信零钱,避免繁复的领