Laravel Omnipay-Mollie error

Я пытаюсь сделать платежную систему на моем сайте с Onmipay-Mollie а также Barryvdh-Laravel-OmniPay

Когда я хочу сделать «платеж», и отправьте форму, использованную для оплаты. Я получаю сообщение об ошибке:

Omnipay \ Common \ Exception \ RuntimeException

This response does not support redirection.

Файл моих маршрутов:

Route::get('mollietest', ['uses'=>'PurchaseController@index','as'=>'purchase.index']);
Route::get('paymenturl', ['uses'=>'PurchaseController@create','as'=>'purchase.create']);
Route::post('paymenturl', ['uses'=>'PurchaseController@store','as'=>'purchase.store']);
Route::get('checkout', ['uses'=>'PurchaseController@show','as'=>'purchase.show']);

И мой Контроллер Закупок:

public function index()
{
return View::make('mollie');
}

public function create()
{
// get list of issuers
$gateway = Omnipay::create('Mollie');
$gateway->setApiKey(mytestapi);

$payment = $gateway->fetchPaymentMethods()->send();
if($payment->isSuccessful()){
$pay = $payment->getPaymentMethods();
}$henk = $gateway->fetchIssuers()->send();
if($henk->isSuccessful()){
$issuers = $henk->getIssuers();
}

return View::make('gewoonbetalen')
->with(['issuers'=>$issuers,'pay'=>$pay]);
}

public function store()
{
// make payment
$gateway = Omnipay::create('Mollie');
$gateway->setApiKey(mytestapi);

$order_id = time();
$params = array(
'amount'=>'10.00',
'description'=> time(),
'method'=>Input::get('paymentmethod'),
'returnUrl'=>URL::route('purchase.show'),
'redirectUrl'=>URL::route('purchase.show'),
'metadata'=> array(
'order_id' => $order_id,
),
'issuer'=>Input::get('issuer'),
);
$response = $gateway->purchase($params)->send();

Log::error('blablalllll');

if($response->isRedirect()){
$response->redirect();
} elseif($reponse->isPending()) {
return "Pending, Reference: ". $response->getTransactionReference();
} else {
return "Error " .$response->getCode() . ': ' .$response->getMessage();
}
}

public function show($id)
{
$gateway = Omnipay::create('Mollie');
$gateway->setApiKey(mytestapi);
$response = $gateway->completePurchase()->send();

$data = $response->getData();

print_r($data);

}

paymenturl view:

{{Form::open(array('action'=>'purchase.store','method'=>'POST'))}}

<select name="paymentmethod">
@foreach($pay as $payment)
<option value="{{$payment->getId() }}">{{$payment->getName()}}</option>
@endforeach
</select>

<select name="issuer">
@foreach($issuers as $issuer)
<option value="{{ $issuer->getId() }}" name="issuer">{{$issuer->getName();}}</option>
@endforeach
<option value="1">of wat anders</option>
</select>

{{Form::submit()}}
{{Form::close()}}

Чего-то не хватает или как? Я был занят этим все выходные, но безуспешно. Есть ли кто-нибудь, кто может сказать мне, что не так?

К вашему сведению: я делаю это на моем местном хосте. Не знаю, если это какая-то проблема (не должно быть)

1

Решение

У меня была такая же проблема. Это действительно часть перенаправления, я рекомендую изменить $ response-> redirect (); что-то вроде …

return Redirect :: away ($ response-> getData () [‘links’] [‘paymentUrl’]);

Это перенаправит пользователя с вашего веб-сайта на URL платежа mollie, так как он будет создан при открытии и указании шлюза. По крайней мере, так мне удалось это исправить.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]