支付宝支付报错

bug问题 · xuxiansen · 于 6年前 发布 · 1839 次阅读

支付宝支付跳转中... An Error occurred while handling another error: yii\web\HeadersAlreadySentException: Headers already sent in /www/web/fecshop/vendor/fancyecommerce/fecshop/app/appfront/modules/Payment/controllers/alipay/StandardController.php on line 31. in /www/web/fecshop/vendor/yiisoft/yii2/web/Response.php:366 Stack trace: #0 /www/web/fecshop/vendor/yiisoft/yii2/web/Response.php(339): yii\web\Response->sendHeaders() #1 /www/web/fecshop/vendor/yiisoft/yii2/web/ErrorHandler.php(135): yii\web\Response->send() #2 /www/web/fecshop/vendor/yiisoft/yii2/base/ErrorHandler.php(111): yii\web\ErrorHandler->renderException(Object(yii\web\HeadersAlreadySentException)) #3 [internal function]: yii\base\ErrorHandler->handleException(Object(yii\web\HeadersAlreadySentException)) #4 {main} Previous exception: yii\web\HeadersAlreadySentException: Headers already sent in /www/web/fecshop/vendor/fancyecommerce/fecshop/app/appfront/modules/Payment/controllers/alipay/StandardController.php on line 31. in /www/web/fecshop/vendor/yiisoft/yii2/web/Response.php:366 Stack trace: #0 /www/web/fecshop/vendor/yiisoft/yii2/web/Response.php(339): yii\web\Response->sendHeaders() #1 /www/web/fecshop/vendor/yiisoft/yii2/base/Application.php(392): yii\web\Response->send() #2 /www/web/fecshop/appfront/web/index.php(90): yii\base\Application->run() #3 {main}

共收到 8 条回复
Terry#26年前 0 个赞

https://github.com/fecshop/yii2_fecshop/blob/master/app/appfront/modules/Payment/controllers/alipay/StandardController.php

将代码

public function actionStart()
    {
        //$AopSdkFile = Yii::getAlias('@fecshop/lib/alipay/AopSdk.php');
        //require($AopSdkFile);
        echo '支付宝支付跳转中...';
        return Yii::$service->payment->alipay->start();
        
    }

改成:

public function actionStart()
    {
        //$AopSdkFile = Yii::getAlias('@fecshop/lib/alipay/AopSdk.php');
        //require($AopSdkFile);
        echo '支付宝支付跳转中...';
        Yii::$service->payment->alipay->start();
        exit;
    }
Terry#36年前 0 个赞

如果按照上面的代码修改后不报错,回馈一下结果

4楼 已删除.
xuxiansen#56年前 0 个赞

@Terry #3楼 报错是没有了,但是没有跳转呀,一直都是“支付宝支付跳转中...”状态

Terry#66年前 0 个赞

@xuxiansen #5楼

将函数改成

public function actionStart()
    {
        //$AopSdkFile = Yii::getAlias('@fecshop/lib/alipay/AopSdk.php');
        //require($AopSdkFile);
        // echo '支付宝支付跳转中...';
        return '支付宝支付跳转中...'.Yii::$service->payment->alipay->start();
    }
xuxiansen#76年前 0 个赞

@Terry #6楼 嗯嗯可以了,多谢:grin:

Terry#86年前 0 个赞

@xuxiansen #7楼 OK.我本机没有报这个错,php7.1,可能是环境的一些细微差异

新版本会修复这个bug

xuxiansen#96年前 1 个赞

@Terry #8楼 嗯嗯应该是

添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册
Your Site Analytics