#symfony #post
#symfony #Публикация
Вопрос:
Когда я выполняю перенаправление, я хочу передать скрытые параметры. Передача параметра в маршруте меня не удовлетворяет, потому что я хочу, чтобы информация была скрыта. Я думал сделать это с помощью POST, но я не знаю, как передать параметры POST в функции RedirectToRoute. Могу ли я это сделать?
Комментарии:
1. Нет параметров для перенаправления. И в следующий раз, когда у вас будет запущен браузер, нажмите F12, а затем перейдите на вкладку сеть. Затем спросите себя, как именно вы можете скрыть информацию даже от слегка осведомленного пользователя.
Ответ №1:
Вы не можете перенаправить запрос POST, потому что браузеру пришлось бы повторно отправлять данные POST, поэтому вы должны использовать forward как:
return $this->redirectToRoute('name_of_route_to_redirect', ['max' => 10,...]);
Для получения дополнительной информации ознакомьтесь с документацией symfony controller
Вы можете отправить объект запроса внутри :
return $this->redirectToRoute('route', [
'request' => $request
], 307);
этот 307 гарантирует, что метод и тело не будут изменены
при перенаправлении запроса
Ответ №2:
Что вы могли бы сделать, так это сохранить ваши параметры в каком-нибудь файле / кэше памяти.
Вы перенаправляете без параметров, и в своем действии вы проверяете, есть ли у вас какие-либо параметры в кэше файла / памяти, и получаете их оттуда.
Я не знаю, хорошо ли это делать, но, похоже, это возможно.