1

POST関数内のページ コントローラーに送信されたデータを取得したいのですinit()が、取得したのは空の配列です。

ただし、getRawBody表示データを取得します。

これが私が使用するコマンドです:

curl http://localhost/api/page/7 -X PUT -d "test=true"

出力は次のとおりです。

配列 ( ) 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());    
    }
}
4

1 に答える 1

3

必要なのは PutHandler プラグインです。これにより、POST と PUT が同じ getParams(); を使用するようになります。

これをapplication.iniに入れてください

resources.frontController.plugins.putHandler = Zend_Controller_Plugin_PutHandler

次に、呼び出すとデータが表示されます

$this->getRequest->getParams();
于 2012-04-02T11:06:32.827 に答える