2016-11-28 104 views
1

我有这样的代码为什么我的网址不是贝宝的完全合格网址?

<?php 

require '..\..\vendor\autoload.php'; 

define('SITE_URL','https://www.historietas.mx'); 

$paypal = new \PayPal\Rest\ApiContext(
     new \PayPal\Auth\OAuthTokenCredential(
      'my_redential', 
      'my_secret' 
     ) 
); 
?> 

而这种代码

$redirectUrls = new RedirectUrls(); 
    $redirectUrls->setReturnUrl(SITE_URL.'\controladores\pagos\pay.php?success=true') 
     ->setCancelUrl(SITE_URL.'\controladores\pagos\pay.php?success=false'); 
    $payment = new Payment(); 
    $payment->setIntent('sale') 
     ->setPayer($payer) 
     ->setRedirectUrls($redirectUrls) 
     ->setTransactions([$transaction]); 

    try{ 
     $payment->create($paypal); 
    } 
    catch(PayPal\Exception\PayPalConnectionException $e){ 
     echo $e->getCode(); 
     echo $e->getData(); 
     die($e); 
    } 
    echo $approvalUrl = $payment->getApprovalLink(); 

,我有这样的错误:

Fatal error: Uncaught exception 'InvalidArgumentException' with message 'ReturnUrl is not a fully qualified URL' 

我不知道发生了什么,我没有使用任何特殊字符hapenning在网址中,为什么给我这个错误?请帮助,这是非常frustating ......从URL

+0

处于URL反斜杠合法吗?我很确定RFC3986说不。 –

+0

网址不能包含反斜杠。使用正斜杠。 – EJP

+0

哇!那就是问题,反斜杠......谢谢大卫和EJP,这让我很疯狂,非常感谢你...... – DarkVader

回答

0

除去空间从您的网址这是个问题

include 'vendor/autoload.php'; 
$checkUrl = 'https://yourdomein.org/user/registration/paypaypal-ch?approval=true&plan=single&[email protected]&firstname=dshdh0d&lastname=dhdas'; 
try { 
     \PayPal\Validation\UrlValidator::validate($checkUrl); 
     echo "Validated\n"; 
    } catch (InvalidArgumentException $ex) { 
     echo $ex->getMessage() . "\n"; 
    }