使用以xml结尾的URL在cakephp中提取URL参数

时间:2014-06-04 09:37:34

标签: php xml cakephp url-parameters

我想在cakephp中传递URL参数,其URL以xml结尾,如下所示;

http://localhost/cp251/controller/api_get_info?page=1.xml

控制器功能如下所示;

public function api_get_info()
{
    if($this->RequestHandler->responseType() == 'xml')
    {
        //Problem is that the code never executes inside this if statement
        //Controller action

    }
}

问题是代码永远不会在if语句if($this->RequestHandler->responseType() == 'xml')中执行。但是,如果URL变为http://localhost/cp251/controller/api_get_info.xml,则代码将在if语句中执行。不幸的是,这不是我想要的,因为无法发送URL参数。

如何在带有以xml结尾的URL的cakephp中传递URL参数?我正在使用cakephp 2.5.1

谢谢。

1 个答案:

答案 0 :(得分:2)

你的期望是有缺陷的。

http://localhost/cp251/controller/api_get_info.xml

实际上是正确的格式。

http://localhost/cp251/controller/api_get_info?page=1.xml

不是(如果您希望查询字符串在使用xml扩展路由时工作)。

如果要附加查询字符串,请始终在URL本身之后执行此操作,例如

http://localhost/cp251/controller/api_get_info.xml?page=xxx&more=stuff