zoukankan      html  css  js  c++  java
  • (用微信扫的静态链接二维码)微信native支付模式官方提供的demo文件中的几个bug修正

    native支付模式一demo(用微信扫的静态链接二维码)BUG修复,一共4个BUG

    1.native_call_qrcode.php这个文件中的代码无法生存native支付的短地址
    2.WxPayPubHelper.php中某个代码获取不到WxPayConf_pub类定义的常量CURL_TIMEOUT
    3.WxPayPubHelper.php curl中cURL会话并且异常释放资源
    4.微信支付长地址转换地址函数有误

    1.纠正短微信短地址未生成支付二维码问题,页面地址native_call_qrcode.php
    第39行:因为官方的$codeUrl获得为空。
    第59行:

    var url = "<?php echo $product_url;?>";

    获得是长地址
    修改为短地址:

    var url = "<?php echo $codeUrl;?>";

    长地址的字符信息量太大常常会导致扫码失败。

    2.WxPayPubHelper.php中某个代码获取不到WxPayConf_pub类定义的常量CURL_TIMEOUT


    WxPayPubHelper/WxPayPubHelper.php
    第155行

    curl_setopt($ch, CURLOP_TIMEOUT, $second);

    这里获取不到CURLOP_TIMEOUT
    应该改成

    curl_setopt($ch, WxPayConf_pub::CURL_TIMEOUT, $second);

    3.WxPayPubHelper.php curl中cURL会话并且异常释放资源
    第176行 return $data;是画蛇添足的的,这里也会报错,因为第171行:

    curl_close($ch);

    已经关闭流

    4.微信支付长地址转换地址函数有误
    第600行 getShortUrl()获取不到短地址,

    function getShortUrl()
    {
    $this->postXml();
    $prepay_id = $this->result["short_url"];
    return $prepay_id;
    }

    修改如下

    function getShortUrl()
    {
    
    $this->postXml();
    $postObj = simplexml_load_string($this->response, 'SimpleXMLElement', LIBXML_NOCDATA);
    $prepay_id = $postObj->short_url;
    return $prepay_id;
    }

    微信开发交流 QQ:187395037  电话:15889726201

  • 相关阅读:
    linux系统命令学习系列-用户切换命令su,sudo
    linux系统命令学习系列-用户组管理
    linux系统命令学习-用户管理
    python web开发-flask中sqlalchemy的使用
    python web开发-flask连接sqlite数据库
    python实现bt种子 torrent转magnet
    prefProvider.kt
    douyin-bot-代码
    pyadb关于python操作adb的资料
    bottle源码
  • 原文地址:https://www.cnblogs.com/keleyu/p/4090226.html
Copyright © 2011-2022 走看看