我有一个包含2页site.com/user/create
和site.com/user/create.json
我需要为两个页面都安装一个控制器。
<controller:\w+>/<action:\w+>.json'=>'<controller>/<action>
)但是没有帮助$_SERVER['CONTENT_TYPE']
,在REST客户端中它没关系,但在浏览器中我收到了PHP通知Undefined index: CONTENT_TYPE
< / LI>
醇>
答案 0 :(得分:2)
至少有两种方法:
Yii::app()->request->getRequestUri();
将获取请求URI - 最后检查它是否为.json扩展名。您的问题中的路由规则应该有效,并将请求发送给正确的控制器和操作。您可以制定如下的路由规则:
<controller:\w+>/<action:\w+>.json'=>'<controller>/<action>/format/json
然后检查您的操作中的format
参数。
我建议采用第二种方式,因为它可以扩展。