微信支付 遇到curl出错,错误码:60 小结


1.jpg

温州天时网站建设经过多方查证无果,初步判断为curl方面的错误。就是抓取服务器端数据可能出现了状况。
后来在微信支付的官方文档里面有一个“注意事项”链接如下https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_2
注意事项的第一条发现了一个重要信息。原文摘抄如下:
1、服务器SSL版本说明
由于低版本的SSL存在高危漏洞,需要确认您系统所使用的SSL版本是否需要升级,详细说明请见公众平台SSL安全策略说明:https://mp.weixin.qq.com/cgi-bin/announce?action=getannouncement&key=1414562353&version=11&lang=zh_CN


ThinkPHP集成微信支付代码:

Vendor("WxpayAPI_php_v3.lib.WxPay","",".Api.php");
                    //vendor("WxpayAPI");
                    //初始化值对象      WxPayUnifiedOrder
                    $input = new \WxPayUnifiedOrder(); 
                    //文档提及的参数规范:商家名称-销售商品类目     
                    $input->SetAppid($appId); 
                    $input->SetMch_id(C("mch_id"));//商户号    
                    $input->SetBody(
                            "uid:".$insData["uid"].
                            "--crom_id:".$insData['crom_id'].
                            "--starttime:".$insData['starttime'].
                            "--endtime:".$insData['endtime'].
                            "--zs_jiner:".$insData['zs_jiner'].
                            "--totaltime:".$insData['totaltime'].
                            "--gbeizhu:".$insData["gbeizhu"]); 
                    //订单号应该是由小程序端传给服务端的,在用户下单时即生成,demo中取值是一个生成的时间戳     
                    $input->SetOut_trade_no($odbhao);     
                    //费用应该是由小程序端传给服务端的,在用户下单时告知服务端应付金额,demo中取值是1,即1分钱
                    $input->SetTotal_fee($insData['zs_jiner']);  
                    $input->SetNotify_url(C("Notify_URL"));     
                    $input->SetTrade_type("JSAPI"); 
                    //由小程序端传给服务端     
                    $input->SetOpenid($openId); 
                    //向微信统一下单,并返回order,它是一个array数组     
                    $order =\WxPayApi::unifiedOrder($input); 
                    $data=array("result"=>'ok',"orderId"=>$thisId,"orderArr"=>$order,"mch_key"=>C("mch_key"));


修改方案:

在WxPay.Api.php 文件中找到如下代码(约538行),可以做直接搜索一下代码:

curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,TRUE);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,2);//严格校验

修改为:

if(stripos($url,"https://")!==FALSE){
        curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        }    else    {
        curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,TRUE);
        curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,2);//严格校验
}

经过温州天时网站建设实际测试,完美解决问题。

注:本文转载自拾图网[http://www.tshinet.com],转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除。
上一篇 下一篇

淘宝热销

  • Mistine小黄帽防晒霜乳SPF50泰版面部防紫外线隔离男女军训蜜丝婷

    【推荐理由】赠运费险

    【优惠券】20   【券后价】59.00

    【下单链接】18¥ CZ0001 G5fHdEqOsnB¥

    >>>>>> 马上打开

  • G7旗舰店越南进口美式纯黑咖啡粉速溶无糖0脂减燃正品学生提神

    【推荐理由】库存紧张,好评过万

    【优惠券】3    【券后价】26.90

    【下单链接】27¥ CZ0001 zb0bdEqLV7G¥

    >>>>>> 马上打开