我使用带有默认路由的CakePHP开发了REST API。现在了解到OData可以缓解我的端点上的大多数查询需求。
例如:
第一个API端点格式:HTTP GET http://api.local/users/83.json
,它路由到UsersController中的视图(id)操作。
第二个API端点格式:HTTP GET http://api.local/users.json
,它路由到UsersController中的index()动作。
我想将这些转换为
对于view(id)动作:
http://api.local/Users(83)/FirstName
- >这只获取id为83的用户的名字。
或者
http://api.local/Users(83)/Friends('johndoe')/Phone
- >这应该得到昵称为johndoe的用户的电话号码以及谁是用户83的朋友。
对于index()动作:
http://api.local/Users
- >这应该列出系统中的所有用户。
或者
http://api.local/Users?$filter=Gender eq 'Female'
- >这应该列出系统中的所有女性用户。
我应该在routes.php或AppController.php中使用哪种路由?