微信支付 :curl出错,错误码:60两个问题的解决
如下是运行微信支付测试代码时出错代码:
Warning:curl_setopt()expectsparameter2tobelong,stringgiveninD:\wwwroot\weixinpaytest\pay\WxPay.JsApiPay.phponline99
Fatalerror:Uncaughtexception‘WxPayException‘withmessage‘curl出错,错误码:60‘inD:\wwwroot\weixinpaytest\lib\WxPay.Api.php:564Stacktrace:#0D:\wwwroot\weixinpaytest\lib\WxPay.Api.php(62):
WxPayApi::postXmlCurl(‘<xml><appid><![...‘,‘https://api.mch...‘,false,6)#1D:\wwwroot\weixinpaytest\pay\jsapi.php(36):
WxPayApi::unifiedOrder(Object(WxPayUnifiedOrder))#2{main}throwninD:\wwwroot\weixinpaytest\lib\WxPay.Api.phponline564
第一个问题,这个问题完全是微信团队的问题,给出的example就是错的:
Warning:curl_setopt()expectsparameter2tobelong,stringgiveninD:\wwwroot\weixinpaytest\pay\WxPay.JsApiPay.phponline99
找到WxPay.JsApiPay.php文件的99行,curl_setopt($ch,CURLOP_TIMEOUT,30);
微信团队example代码里少了一个“T”,正确代码应该是curl_setopt($ch,CURLOPT_TIMEOUT,30);
这样,这一个问题就解决了。
下面说第二个问题:
Fatalerror:Uncaughtexception‘WxPayException‘withmessage‘curl出错,错误码:60‘inD:\wwwroot\weixinpaytest\lib\WxPay.Api.php:564Stacktrace:#0D:\wwwroot\weixinpaytest\lib\WxPay.Api.php(62):
WxPayApi::postXmlCurl(‘<xml><appid><![...‘,‘https://api.mch...‘,false,6)#1D:\wwwroot\weixinpaytest\pay\jsapi.php(36):
WxPayApi::unifiedOrder(Object(WxPayUnifiedOrder))#2{main}throwninD:\wwwroot\weixinpaytest\lib\WxPay.Api.phponline564
这个错误通过修改文件WxPay.Api.php解决,具体如下:
第537行
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,TRUE);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,2);//严格校验
to
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,FALSE);//严格校验2
这样,这两个问题就解决了!祝你好运!
以上就是对微信支付出现问题的资料整理,后续继续补充相关资料谢谢大家对本站的支持!