在CodeIgniter中为url添加“前缀”控制器

时间:2012-02-19 16:43:46

标签: php api codeigniter

我目前在CodeIgniter上运行api,可以通过http://mysite.com/controller/method/variable访问。但是,我想转换网址,在控制器之前添加“api”前缀,让网址看起来像http://mysite.com/api/controller/method/variable

我认为这与路由有关,所以我在routes.php文件中添加了两条新路由:

$route['api/users/auth'] = 'users/auth';
$route['api/users/create'] = 'users/create';

现在将'api'前缀添加到以下网址。

http://mysite.com/api/users/auth
http://mysite.com/api/users/create

但是现在,仍然可以通过调用上面的URL而不使用'api'前缀来访问端点。

如何防止这种情况发生或最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

解决方案应该是从Users控制器中删除方法authcreate,并将它们放入application / controllers / api / users.php中名为Users的新控制器中。然后你也可以删除api的特定路由,它会起作用。 (见here