Php HTTP获取响应错误400
PayPal\Exception\PayPalConnectionException:访问时获取Http响应代码400Php HTTP获取响应错误400,php,paypal,Php,Paypal,PayPal\Exception\PayPalConnectionException:访问时获取Http响应代码400 payment.php的我的代码: <?php $base = realpath($_SERVER["DOCUMENT_ROOT"]); require_once $base.'/gsys3/assets/php/paypal.api.php'; use PayPal\Api\Payer; use PayPal\Api\Details;
payment.php的我的代码
:
<?php
$base = realpath($_SERVER["DOCUMENT_ROOT"]);
require_once $base.'/gsys3/assets/php/paypal.api.php';
use PayPal\Api\Payer;
use PayPal\Api\Details;
use PayPal\Api\Amount;
use PayPal\Api\Transaction;
use PayPal\Api\Payment;
use PayPal\Api\RedirectUrls;
if(!isset($_SESSION['account'])){
header('Location: ../../main.php');
} elseif($_SESSION['account']['perms'] != 3){
header('Location: ../../main.php');
}
$payer = new Payer();
$details = new Details();
$amount = new Amount();
$transaction = new Transaction();
$payment = new Payment();
$redirectUrls = new RedirectUrls();
$payer->setPaymentMethod('paypal');
$shippingcost = '1';
$taxcost = '7';
$subtotalcost = '100';
$totalcost = $shippingcost + $taxcost + $subtotalcost;
$details->setShipping($shippingcost)
->setTax($taxcost)
->setSubtotal($subtotalcost);
$amount->setCurrency('USD')
->setTotal($totalcost)
->setDetails($details);
$transaction->setAmount($amount)
->setDescription('Enrollment');
$payment->setIntent('sale')
->setTransactions([$transaction]);
$redirectUrls->setReturnUrl('http://localhost:8080/gsys3/public/dashboard/parent/pay.php?approved=true')
->setCancelUrl('http://localhost:8080/gsys3/public/dashboard/parent/pay.php?approved=false');
$payment->setRedirectUrls($redirectUrls);
try {
$payment->create($paypalapi);
} catch (PayPal\Exception\PPConnectionException $pce){
echo '<pre>';print_r(json_decode($pce->getData()));exit;
}
$apiContext->setConfig(
array(
'mode' => 'sandbox',
'log.LogEnabled' => true,
'log.FileName' => 'PayPal.log',
'log.LogLevel' => 'DEBUG',
)
);
我已经检查了客户端和密钥,这些密钥是准确的我建议您激活的日志以获取有关异常的更多信息。这些是我的开发设置
你查过了吗?@pyromank是的,我查过了,我想我放对了参数。如果它返回400,那么其中一个参数很可能是关闭的。我建议你回音(除非有安全隐患)。谢谢你,我会尽快尝试的
$apiContext->setConfig(
array(
'mode' => 'sandbox',
'log.LogEnabled' => true,
'log.FileName' => 'PayPal.log',
'log.LogLevel' => 'DEBUG',
)
);