0
我正在尝试将贝宝自适应付款集成到laravel中。在laravel控制器中执行多个功能?
我想用类似这样的代码的东西: http://proggblo.blogspot.ca/2013/04/paypal-adaptive-payments-parallel.html
问题是,我不会太知道如何做到这一点laravel内。我会使用控制器并通过发布请求吗?如果是这样,它会是什么样子?像这样? 路线:
Route::post('/payment', [
'uses' => '\CommendMe\Http\Controllers\[email protected]',
'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);
}
}
}
等等,等等离开代码的其余部分进行。 (你可以在上面的链接中找到它)
现在,如果付款功能内的功能将执行,现在这将罚款。
在这种情况下,我应该使用中间件而不是控制器吗?