Zend RESTful API的实际示例

时间:2012-05-17 09:23:27

标签: php zend-framework zend-rest zend-rest-route

我在网上引用过很多关于这个主题的文章,但只有基本的例子。我遇到了一些实际问题。

1)。在Zend_Rest_Controller中,有get,post,put和delete的抽象方法。如何使用getAction,postAction等创建我自己的函数...以响应获取请求(例如:api.abc.com/product/5 - 这将返回类别5中的产品集) ?

2)。是否可以仅为模块中的特定控制器启用休止路由?

你能举一些例子或一些文章吗?

1 个答案:

答案 0 :(得分:0)

我会尝试回答这个问题,因为我已经使用Zend_Rest_Controller创建了一个API,但由于项目不公开,我只能复制粘贴这么多。

1)你应该使用这些方法。它们很有帮助,因为它们会迫使您根据每个控制器作为资源进行思考。因此,对于每个资源,您应该只能定义一次GET动词。

public function getAction()
{
    if (!is_null($this->getParam("id"))) {
        $this->view->user = $userModel->getUserById($this->getParam("id",null));
        $this->_helper->viewRenderer('get-user');
    } else {
        $userModel = new Model_Users();
        $this->view->users = $userModel->getUsers();
        $this->_helper->viewRenderer('get-all-users');
    }
}

2)开箱即用 - 我认为没有。但这不应该是一件坏事,因为无论如何你应该把所有其余的功能放在一个单独的模块中。