打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Zend Framework 1.12中让action响应指定的提交方式
在ASP.NET MVC中,可以通过[HttpPost]或者[HttpGet]标签使得Action方法只响应指定的提交方式。
在Zend Framework中没有这种标签方式,因此实现方式有点不同。
在ZF中,所有的Controller都有preDispatch方法,该方法在action方法调用前被调用,因此可以在这个方法上做文章。
在这个方法中判断所进来的请求是get还是post,并且指定哪些action可以接受post方法,哪些可以接受get方法,即可实现。
示例代码如下:public function preDispatch(){
if($this->_request->isPost())//如果是post动作
{
   //如果请求的action不在提供的列表中,则退出程序。
   if (false==in_array($this->getRequest()->getActionName(), array('onlypost'))) {
       exit('The action cannot be called by post');
   }
}
        if($this->_request->isGet())//如果是Get动作
{
   //如果请求的action不在提供的列表中,则退出程序。
   if (false==in_array($this->getRequest()->getActionName(), array('onlyget'))) {
       exit('The action cannot be called by Get');
   }
}
    }
这里需要提起一下,在PHP框架 Zend Framework 1.12中,Zend_Controller_Request_Http被用来访问整个HTTP请求环境。 因此,当你在action方法中,使用$this->getRequest(),其得到的对象本质类型是Zend_Controller_Request_Http,而不是简单的Zend_Controller_Request_Abstract,事实上,抽象类也不能实例化。Zend_Controller_Request_Abstract中并没有isPost()方法,而它的子类Zend_Controller_Request_Http中提供了该方法。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
深入整体分析Spring MVC framework
【译著】12.2 接收输入 — 精通 MVC 3 框架
解决form提交封装成Form出现乱码
tp5.1 Auth类实现权限管理
Web API系列(三) 异常处理
如何选择Html.RenderPartial和Html.RenderAction
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服