2012-02-19 3 views
0

В настоящее время у меня есть api, работающий на CodeIgniter, к которому можно получить доступ через http://mysite.com/controller/method/variable. Тем не менее, я хочу преобразовать URL-адрес, добавив префикс «api» перед контроллером, оставив URL-адрес похожим на http://mysite.com/api/controller/method/variable.Добавить 'префикс' контроллер для url в CodeIgniter

Я предположил, что это делать с маршрутизацией, так что я добавил два новых маршрута к 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

ответ

1

Решение должно состоять в том, чтобы удалить метод auth и create из вашего контроллера пользователей и поместить их в новый контроллер с именем Users в приложении/контроллерах/api/users.php. Затем вы также можете удалить конкретный маршрут для своего api, он будет работать. (см. here)

Смежные вопросы