Я пытаюсь выяснить, как перенаправить на новую страницу (другое приложение, контроллер, действие) и сохранить текущие данные POST.
Мое приложение проверяет данные POST, и если определенные критерии выполнены, я хочу перенаправить на другое место, но убедитесь, что данные POST переданы как данные POST на эту новую страницу. Вот пример:
POST /app1/example HTTP/1.1
Host: example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 17
var1=foo&var2=bar
В моем exampleAction
(Zend_Controller_Action) я проверяю, есть ли var1 == foo
, и если это нужно, я хочу перенаправить (302) в /app 2/example с теми же данными POST. Что-то может быть так?
HTTP/1.x 302 Found
Location: /app2/example
Content-Type: application/x-www-form-urlencoded
Content-Length: 17
var1=foo&var2=bar
Я вижу, как создать новый HTTP-запрос с помощью Zend_Http_Client, но я не хочу просто запрашивать страницу и отображать содержимое. Должен ли я по-прежнему искать Zend_Http_Client? На данный момент я играю с такими вещами:
$this->getResponse()->setRedirect('/app2/example/', 302);
$this->getResponse()->setBody(http_build_query($this->_request->getPost()));
Я уверен, что то, что я хочу сделать, возможно с помощью некоторых способов обмана и демонстрации, но это определенно намекает на меня. Любая помощь приветствуется.
- rk