4

您好我正在尝试在 Zend 应用程序中设置一些 REST 路由,我想知道如何限制可以访问路由的 HTTP 方法。

$route = new Zend_Controller_Router_Route('user/reset_password', array(
                'module' => 'default',
                'controller' => 'user',
                'action' => 'resetpassword'
            ));
$front_controller->getRouter()->addRoute('reset_password', $route);

在此路由中,我想指定此路由将响应的 HTTP 动词,如 GET、POST、PUT 等,例如将“method”=>“POST”添加到数组中。

谢谢,

4

1 回答 1

6

您不能在 ZF 的当前实现中这样做,因为它将路由接口声明为:

interface Zend_Controller_Router_Route_Interface {
    public function match($path);
    public function assemble($data = array(), $reset = false, $encode = false);
    public static function getInstance(Zend_Config $config);
}

如您所见,方法参数没有空间。

但是,您可以在控制器中进行所有检查或编写自己的路由器。

于 2011-05-30T20:09:42.020 回答