第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

捕獲并處理PayPal SDK HTTP 異常 PHP yii2

捕獲并處理PayPal SDK HTTP 異常 PHP yii2

PHP
回首憶惘然 2022-08-19 16:48:22
我一直在使用PayPal SDK,我有一個驗證付款順序的操作。我想在事務期間捕獲并處理PayPal錯誤,以便稍后在消息上顯示它。我嘗試在捕獲上添加PayPal\Exception\PayPalConnectionException,但沒有任何結果。這是它如何顯示錯誤:https://i.stack.imgur.com/zlRge.png我的代碼操作:public static function actionGetorder($orderId){    try     {        // 3. Call PayPal to get the transaction details        $client = PayPalClient::client();        $response = $client->execute(new OrdersGetRequest($orderId)); //The order ID isn't valid so it will give the error        var_dump ($response->result->payer->email_address);        print "Status: {$response->result->status}\n";    }     catch (PayPal\Exception\PayPalConnectionException $ex)     {        echo "lol";    }}這個想法是,在代碼中,它應該顯示lol消息,但它沒有,所以它是否有可能捕獲和處理錯誤以及如何?感謝您的閱讀,問候。
查看完整描述

2 回答

?
qq_遁去的一_1

TA貢獻1725條經驗 獲得超8個贊

例外情況可能有所不同。但是在你的代碼中,你只是試圖趕上一個例外,那就是.但是,如果例外是另一個呢?顯然,PHP執(zhí)行流不會轉到您的捕獲塊,因此您看不到消息。在圖像中,顯示您的代碼捕獲了 。PayPal\Exception\PayPalConnectionExceptionlolPayPalHttp\HttpException


因此,您需要嘗試設置多個塊。這意味著您可以根據需要添加任意數量的異常,如下面的代碼所示:catch


public static function actionGetorder($orderId)

{

    try {

        // 3. Call PayPal to get the transaction details

        $client = PayPalClient::client();

        $response = $client->execute(new OrdersGetRequest($orderId)); //The order ID isn't valid so it will give the error


        var_dump ($response->result->payer->email_address);

        print "Status: {$response->result->status}\n";

    } catch (PayPalHttp\HttpException $e) {

        echo $e->getMessage();

    } catch (PayPal\Exception\PayPalConnectionException $e) {

        echo $e->getMessage();

    } finally {

        echo 'If no exception has already been caught, show your own custom message';

    }

}

現在的問題是,您如何知道應該使用哪些例外?好吧,可以從您在塊內部使用的代碼中知道它。try {}


在這種情況下,請檢查$client->execute(new OrdersGetRequest($orderId));引發(fā)任何異常。如果這樣做,請在塊中使用它們。PayPalClient::client(); orcatch


希望這對你有所幫助!


查看完整回答
反對 回復 2022-08-19
?
墨色風雨

TA貢獻1853條經驗 獲得超6個贊

我有一個路由問題到類,所以這就是代碼在yii2上的工作方式,我希望它能幫助別人:


try 

    {

        // $orderId = base64_decode($orderId);

        $client = PayPalClient::client();

        $response = $client->execute(new OrdersGetRequest($orderId));

        $status = $response->result->status;

        $email_cliente = $response->result->payer->email_address;


        if ($status != 'COMPLETED') 

        {

            \Yii::$app->session->setFlash('error', \Yii::t("app", "problema_pago"));


            return $this->redirect(['../web/pagar']);

        }



    }

    catch (\PayPalHttp\HttpException $e) {

    echo $e->getMessage();

    } catch (\PayPal\Exception\PayPalConnectionException $e) {

        echo $e->getMessage();

    }


查看完整回答
反對 回復 2022-08-19
  • 2 回答
  • 0 關注
  • 131 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號