Как я могу получить ошибку полосы в json laravel? - PullRequest
0 голосов
/ 02 августа 2020

У меня есть приложение ioni c, которое делает запрос к моему laravel серверу для совершения платежа на платформе Stripe. но при возникновении ошибки возвращается Обработчик. php ошибка, и я не могу получить доступ к объекту.

Как мне получить «На вашей карте недостаточно средств». в json? чтобы позже показать это в моем приложении.

Я уже пробовал попробовать и поймать и продолжаю отправлять ошибку в дескрипторе

изображение

Мой контроллер:

 try {
                //Charge the Card
            $charge = $stripe->charges()->create([
                'source' => $request->token,
                'currency' => $reservation->divisa_code,
                'amount'   => $reservation->total_price_divisa,
                'description' => "App Payment Booking Seadust Cancun",
                'receipt_email' => $guest->email                
            ]);
        } catch (\Stripe\Error\InvalidRequest $e) {
            //Send User to Error Page
            return $e;
        } catch(\Stripe\Error\Card $e) {
            // Since it's a decline, \Stripe\Error\Card will be caught
            $body = $e->getJsonBody();
            return $body;
        } catch (\Stripe\Error\Base $e) {
            //Send User to Error Page
            return $e;
        } catch (Exception $e) {
            return $e;
        };

1 Ответ

0 голосов
/ 02 августа 2020

Я думаю, вы поймали неправильное исключение (отметьте здесь ), у вас, вероятно, должно получиться что-то вроде этого:

try {
    //Charge the Card
    $charge = $stripe->charges()->create([
        'source' => $request->token,
        'currency' => $reservation->divisa_code,
        'amount'   => $reservation->total_price_divisa,
        'description' => "App Payment Booking Seadust Cancun",
        'receipt_email' => $guest->email                
    ]);
} catch (\Stripe\Error\InvalidRequest $e) {
    //Send User to Error Page
    return $e;
} catch (Cartalyst\Stripe\Exception\CardErrorException $e) {
    return $e->getMessage();
    // or if you want a "bad response" in case of exception
    // abort(404, $e->getMessage());
} catch (Exception $e) {
    return $e;
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...