【问题标题】:Get params from PUT or DELETE request from ZEND_HTTP_CLIENT request从 ZEND_HTTP_CLIENT 请求的 PUT 或 DELETE 请求中获取参数
【发布时间】:2015-02-18 15:45:50
【问题描述】:

我想从 Zend_Http_client 发送的 PUT 或 DELETE 请求中获取参数,如下所示:

$httpClient = new Zend_Http_Client();
$httpClient->setUri("http://mysite/mycontroller/");
$httpClient->setMethod(Zend_Http_Client::PUT);
$data = array("id"=>"1","label"=>"LABEL UPDATE");
$httpClient->setParameterPost($data);
$response = $httpClient->request();

对于 POST 请求,我可以毫无问题地检索参数,但对于 PUT 或 DELETE,我什么都没有... 任何的想法 ? 谢了

【问题讨论】:

    标签: php rest zend-framework httprequest


    【解决方案1】:

    最后我找到了这个解决方案: 在 Zend/Controller/Plugin/ 你可以找到 PutHandler.php 。它可用于使用 $this->getRequest()->param_name 获取 PUT 参数。 将其包含在您的 boostrap.php 文件中:

    protected function _initRestRoute()
    {
        $this->bootstrap('frontController');
        $frontController = Zend_Controller_Front::getInstance();
        $frontController->registerPlugin(new Zend_Controller_Plugin_PutHandler());
        $frontController->registerPlugin(new Zend_Controller_Plugin_DeleteHandler());
        $restRoute = new Zend_Rest_Route($frontController);
        $frontController->getRouter()->addRoute('default', $restRoute);
    }
    

    我为 Delete params 扩展了 PutHandler.php 脚本,它可以工作。

    【讨论】:

      猜你喜欢
      • 2017-03-10
      • 2013-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-03
      • 2021-08-11
      • 1970-01-01
      • 2022-08-19
      相关资源
      最近更新 更多