在 Laravel 中获取贝宝付款详细信息时出现 403 错误

Posted

技术标签:

【中文标题】在 Laravel 中获取贝宝付款详细信息时出现 403 错误【英文标题】:Getting 403 error while getting paypal payment details in Laravel 【发布时间】:2020-04-15 03:02:51 【问题描述】:

我想在后端通过交易 ID 获取付款详情。所以只会从前端获取交易 ID,我需要检查这笔付款。

我的交易信息:


    "id":"8BE39713UM4013017",
    "state":"completed",
    "payment_mode":"INSTANT_TRANSFER",
    "protection_eligibility":"ELIGIBLE",
    "parent_payment":"PAYID-LYAS2CA0MC84362BH057454Y",
    "create_time":"2019-12-23T21:10:26Z",
    "update_time":"2019-12-23T21:10:26Z",
    "amount": 
        "total":"100.00",
        "currency":"USD",
        "details": 
            "subtotal":"100.00",
            "shipping":"0.00",
            "handling_fee":"0.00",
            "insurance":"0.00",
            "shipping_discount":"0.00"
        
    

我的控制器:

public function paypal()

        $payment_token = 'PAYID-LYAS2CA0MC84362BH057454Y';

        try 
            $paypal_key = config('services.paypal.client_id');
            $paypal_secret = config('services.paypal.secret');
            $paypal_mode = config('services.paypal.mode');
            $apiContext = new ApiContext(new OAuthTokenCredential($paypal_key, $paypal_secret));
            $apiContext->setConfig([
                'mode' => $paypal_mode
            ]);
            $payment = Payment::get($payment_token, $apiContext);
            return $payment;
        
        catch (\Exception $exception)
            return $exception->getMessage();
        
    

错误是:

访问 https 时得到 Http 响应码 403: //api.sandbox.paypal.com/v1/payments/payment/PAYID-LYAS2CA0MC84362BH057454Y。

【问题讨论】:

【参考方案1】:

403 是拒绝访问的 HTTP 响应代码。

在某种程度上,您未经授权提出请求,我不熟悉您的用例,但请仔细检查您的详细信息并重新阅读有关该主题的文档。

祝你好运

【讨论】:

以上是关于在 Laravel 中获取贝宝付款详细信息时出现 403 错误的主要内容,如果未能解决你的问题,请参考以下文章

在生产系统上使用节点 SDK 处理贝宝付款时出现 401 invalid_client

数据库中的贝宝付款商店详细信息

贝宝快速付款验证

如何在 laravel 中实现诸如 Fiverr 之类的信用卡和贝宝交易

缺少贝宝付款操作

在 PayPal SandBox,MVC 中创建付款时出现 INTERNAL_SERVICE_ERROR