2012-02-19 84 views
0

我目前有一个在CodeIgniter上运行的API,可以通过http://mysite.com/controller/method/variable访问。不过,我想转换网址,在控制器前添加一个'api'前缀,使网址看起来像http://mysite.com/api/controller/method/variable在CodeIgniter中为url添加一个'prefix'控制器

我认为,这是与路由做的,所以我加了两条新航线的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'前缀来访问端点。

我该如何防止这种情况发生,或者最好的方法是什么?

+0

所以你刚刚添加了两条新路线,但没有删除原有的两个?只要删除那些没有'api'的请求就会失败。 – abraham 2012-02-19 16:59:03

回答

1

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

相关问题