Получение пост переменных в контроллере zend rest
Я хотел бы получить POST
данные отправляются на страницу контроллера в init()
функция, но я получаю пустой массив.
Тем не менее, получение getRawBody
отображает данные
Вот команда, которую я использую:
curl http://localhost/api/page/7 -X PUT -d "test=true"
и вывод:
Array () test = true
class Api_PageController extends Zend_Rest_Controller
{
public function init()
{
$this->_helper->viewRenderer->setNoRender();
$this->_helper->layout->disableLayout();
print_r($this->getRequest()->getPost());
print_r($this->getRequest()->getRawBody());
}
}
1 ответ
Решение
То, что вы хотите, это плагин PutHandler. Это заставит POST и PUT использовать один и тот же getParams();
положить это в вашем application.ini
resources.frontController.plugins.putHandler = Zend_Controller_Plugin_PutHandler
Тогда данные должны появиться при звонке
$this->getRequest->getParams();