Laravel 5: как перенаправить данные с внешнего контроллера формы ресурса

Я хочу отправить пользователя в платежный шлюз. Обычно это можно сделать по этой форме:

<form method="post" action="https://demo.moneta.ru/assistant.htm"> <input type="hidden" name="MNT_ID" value="12345678"> <input type="hidden" name="MNT_TRANSACTION_ID" value="000001"> <input type="hidden" name="MNT_CURRENCY_CODE" value="USD"> <input type="hidden" name="MNT_AMOUNT" value="123.45"> <input type="submit" value="Pay"> </form> 

Пользователь нажимает «Оплатить» и перенаправляется на платежные ворота.

Но я хочу реализовать этот рабочий процесс:

  1. Пользователь вводит информацию о доставке, способ оплаты и т. Д.
  2. После этого он нажимает «Pay» и
  3. Сначала я хочу хранить данные (я делаю это в своем контроллере) …
  4. … и после этого я хочу перенаправить пользователя на платежные ворота. (это неясно для меня)

Возникает вопрос: как перенаправить пользователя на внешний ресурс с контроллера (метод должен быть POST, и мне нужно отправить некоторые данные, такие как MNT_ID и т. Д. (См. Пример формы выше)?

Related of "Laravel 5: как перенаправить данные с внешнего контроллера формы ресурса"

Это может помочь вам использовать контроллер Laravel как обычно и перенаправить после внешнего ресурса.

По вашему мнению перенаправить действие на ваш контроллер:

 <form method="post" action={{ action('Controller@method') }}> <input type="hidden" name="MNT_ID" value="12345678"> <input type="hidden" name="MNT_TRANSACTION_ID" value="000001"> <input type="hidden" name="MNT_CURRENCY_CODE" value="USD"> <input type="hidden" name="MNT_AMOUNT" value="123.45"> <input type="submit" value="Pay"> </form> 

В вашем контроллере:

 public function method(Request $request) { // Validate // Store // ... Redirect::away('https://demo.moneta.ru/assistant.htm')->withInputs(Input::all()); } 

Я не тестировал его, но я уверен, что он работает (или близок к решению).

Вы можете получить другое предложение из официального руководства: http://laravel.com/docs/5.1/responses#redirects