2011-05-30 100 views
4

嗨我想在Zend應用程序中設置一些REST路由,我想知道如何限制可以訪問路由的HTTP方法。Zend路由和HTTP動詞/方法

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

在該路線中,我想指定像GET HTTP謂詞,POST,PUT,等等,這路線將響應,如添加「方法」 =>「POST」到陣列。

感謝,

回答

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); 
} 

正如你可以看到有沒有空間方法的參數。

但是,您可以在控制器中執行所有檢查或編寫自己的路由器。