【发布时间】:2013-12-10 16:47:17
【问题描述】:
所以在阅读了关于 API 版本控制的 this question 之后,我决定在所有路由前加上版本号:
http://localhost/api/1.0/user/login
但是当我在 Exceptions Core 中抛出异常时,它说路由是:
10/UserControll...
我试过逃避这个时期,但这没有奏效。任何人都可以复制这个问题并想出一个可能的解决方案吗?
这是我用于上述情况的路线:
$route['1.0/user/(:any)'] = '1.0/UserController/$1';
这些是我允许的 URI 字符:
$config['permitted_uri_chars'] = 'a-z 0-9~%\.:_\-';
【问题讨论】:
-
你能粘贴一个带有你的 routes.php 前缀的示例路由吗?
-
我添加了一个示例路线。
-
在 Exceptions 核心中抛出异常是什么意思?当我在控制器中使用
$this->uri->uri_string()时,它会正确显示 URI。我不清楚您要做什么(而且我不会阅读您添加的链接中的那个巨大的帖子)。 -
在
system/core/Exceptions.php中我添加了throw new Exception()以查看导致404 的路由,它显示了一条没有句点的路由。我不能在我的控制器中使用uri_string(),因为 CodeIgniter 永远不会到达我的控制器。
标签: php api codeigniter rest routes