收藏
回答

[扫码支付]php demo模式一制作出的二维码老是报系统繁忙

从官网下的最新的php demo程序(WxpayAPI_php.zip),  尝试跑了下,模式一生成的二维码用微信一扫就报“系统繁忙”,

模式二生成的二维码倒是可以跳到支付页面,不过我需要的是模式一,现在没法知道为啥微信会报这样的错误,那个大神碰到过这种情况的,麻烦提示下,谢谢了。

最后一次编辑于  2018-12-21  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

2 个回答

  • 微信支付技术助手3
    微信支付技术助手3
    2018-12-26

    答:请按照以下几点检查:

    1)xml格式是否正确。

    2)没用的字段不传,不能传null,比如err_code_des。

    3)签名出问题也会显示系统繁忙的,注意要设置完所有参数后才进行签名。


    2018-12-26
    赞同
    回复 2
    • 麦芒
      麦芒
      2018-12-27

      你说的err_code_des在统一下单里才有,但是native支付模式一制作二维码时是不需要调到统一下单的,它直接调用phpqrcode生成的二维码。native支付模式二才需要,但是我这边模式二是正常的,模式一扫码的时候才报系统繁忙。


      21   /**

       22    *

       23    * 生成扫描支付URL,模式一

       24    * @param BizPayUrlInput $bizUrlInfo

       25    */

       26   public function GetPrePayUrl($productId)

       27   {

       28     $biz = new WxPayBizPayUrl();

       29     $biz->SetProduct_id($productId);

       30     try{

       31       $config = new WxPayConfig();

       32       $values = WxpayApi::bizpayurl($config, $biz);

       33     } catch(Exception $e) {

       34       Log::ERROR(json_encode($e));

       35     }

       36     $url = "weixin://wxpay/bizpayurl?" . $this->ToUrlParams($values);

       37     return $url;

       38   }



      59    * 生成直接支付url,支付url有效期为2小时,模式二

       60    * @param UnifiedOrderInput $input

       61    */

       62   public function GetPayUrl($input)

       63   {

       64     if($input->GetTrade_type() == "NATIVE")

       65     {

       66       try{

       67         $config = new WxPayConfig();

       68         $result = WxPayApi::unifiedOrder($config, $input);

       69         return $result;

       70       } catch(Exception $e) {

       71         Log::ERROR(json_encode($e));

       72       }

       73     }

       74     return false;

       75   }


      2018-12-27
      回复
    • 微信支付技术助手3
      微信支付技术助手3
      2018-12-28回复麦芒

      您好,请将你生成二维码的链接给我看下

      2018-12-28
      回复
  • 麦芒
    麦芒
    2018-12-27

    你好,PHP的demo里没有xml文件。

    2018-12-27
    赞同
    回复