我实际上是在Codeigniter http://code.tutsplus.com/tutorials/working-with-restful-services-in-codeigniter--net-8814
中遵循REST API教程它适用于简单的用例。
但是我想设置自定义路由网址以使用我的api更加用户友好,我解释...
例如:我想获得专用教室的学生名单 我希望用户设置http:myurl / api / classroom / 1 / students /
在路线配置文件中我设置:$ route ['api / classroom /(:num)/ students /'] ='api / classroom / students / $ 1';
它不起作用,因为REST API将(:num)解释为方法/函数。有办法管理这个案子吗?
在另一种情况下,拥有以下用例应该是很好的:对于教室ID 1,获取id为2的学生的数据=> HTTP:myurl / API /教室/ 1 /学生/ 2
感谢您的帮助:)
答案 0 :(得分:0)
我设法处理它,就像下面的例子
在路线档案中
$route['(api/users/email/(:any)/password/(:any))'] = 'api/users/by_credentials/$2/$3'; // User by id
在我的控制器中,获取这样的参数
public function by_credentials_get($email,$password){
// ... ex: this->mymodel->testcredentials($email,$password)
}