贝宝成功 url 错误 laravel

Posted

技术标签:

【中文标题】贝宝成功 url 错误 laravel【英文标题】:paypal success url error laravel 【发布时间】:2016-07-17 07:03:47 【问题描述】:

我正在使用 laravel Omni 插件进行交易。付款完成后,我收到成功网址错误。

public function  checkOut(Request $request)

    $params = array(
                'cancelUrl'     => 'http://localhost/vis/public/cancel_order',
                'returnUrl'     => 'http://localhost/vis/public/payment_success',
                'name'      => 'Meal',
                'description'   => 'Casper',
                'amount'    => '1.00',
                'currency'  => 'USD'
            );

    Session::put('params', $params);
    Session::save();
    $gateway = Omnipay::create('PayPal_Express');
    $gateway->setUsername('un');
    $gateway->setPassword('pwd');
    $gateway->setSignature('signature');
    $gateway->setTestMode(true);
    $response = $gateway->purchase($params)->send();

    if ($response->isSuccessful()) 
        print_r($params);
        redirect('payment_success/' . $this->orderNo);
        // payment was successful: update database
        print_r($response);
     elseif ($response->isRedirect()) 

        // redirect to offsite payment gateway
        $response->redirect();
     else 
        // payment failed: display message to customer
        echo $response->getMessage();
    


public function getSuccessPayment()

    $gateway = Omnipay::create('PayPal_Express');
    $gateway->setUsername('un');
    $gateway->setPassword('pwd');
    $gateway->setSignature('signature');
    $gateway->setTestMode(true);

    $params = Session::get('params');
    $response = $gateway->completePurchase($params)->send();
    $paypalResponse = $response->getData(); // this is the raw response object

    if(isset($paypalResponse['PAYMENTINFO_0_ACK']) && $paypalResponse['PAYMENTINFO_0_ACK'] === 'Success') 
        // Response
        print_r($params);
 //     print_r($paypalResponse);

     else 

        //Failed transaction

    
//  return View('result');
    print_r($params);
    print_r($paypalResponse);

我收到以下错误

未找到 HTTP 错误 404。未找到请求的资源。 http://localhost/vis/public/payment_success?token=EC-1R845179Asss493N&PayerID=swdw3BS9REA4AN

【问题讨论】:

【参考方案1】:

您可能忘记在 routes.php 中添加该路由,请确保您在 routes.php 中有类似的内容

Route::get('/payment_success', 'StoreController@getSuccessPayment');

将 StoreController 更改为此函数所在的控制器的名称。

【讨论】:

以上是关于贝宝成功 url 错误 laravel的主要内容,如果未能解决你的问题,请参考以下文章

角度导航到贝宝 url 响应

贝宝沙箱 IPN 通知 url 没有响应

贝宝改变了取消网址的含义吗?或者它是一个错误?

贝宝 - 订阅按钮

贝宝沙盒内部服务错误

贝宝 CORS 错误