【发布时间】:2017-02-11 17:34:14
【问题描述】:
我正在尝试在 laravel 中集成 Paypal 自适应支付。
我想使用类似于此代码的内容: http://proggblo.blogspot.ca/2013/04/paypal-adaptive-payments-parallel.html
问题是,我不太确定如何在 laravel 中做到这一点。我会使用控制器并通过发布请求吗?如果是这样,它会是什么样子?像这样的东西? 路线:
Route::post('/payment', [
'uses' => '\CommendMe\Http\Controllers\PaypalController@payment',
'as' => 'quote.payment',
]);
控制器:
class PaypalController extends Controller {
public function payment(Request $request) {
$apiUrl = "https://svcs.sandbox.paypal.com/AdaptivePayments/";
$paypalUrl = "https://www.sandbox.paypal.com/webscr?cmd=_ap-payment&paykey=";
function __construct() {
$this->headers = array(
"X-PAYPAL-SECURITY-USERID: ".API_USER,
"X-PAYPAL-SECURITY-PASSWORD: ".API_PASS,
"X-PAYPAL-SECURITY-SIGNATURE: ".API_SIG,
"X-PAYPAL-REQUEST-DATA-FORMAT: JSON",
"X-PAYPAL-RESPONSE-DATA-FORMAT: JSON",
"X-PAYPAL-APPLICATION-ID: ".APP_ID
);
}
function _paypalSend($data,$call) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $this->apiUrl.$call);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, $this->headers);
return json_decode(curl_exec($ch), TRUE);
}
}
}
等等。等等。留下其余的代码。 (您可以在上面的链接中找到它)
现在,如果支付功能中的功能可以执行,那就没问题了。
在这种情况下我应该使用中间件而不是控制器吗?
【问题讨论】: