[英]Symfony2: FOSRest: Allow route for both “/api/items” and “api/items/{id}”
因此,我正在嘗試使用Symfony2和FOSRestBundle創建一個簡單的REST api。
進展非常順利,但是我碰到了一堵牆,谷歌顯然無法回答:)
我了解這:
public function getUsersAction(){
return 'A list of all the users';
}
將這樣創建一條路線:
api_get_users GET ANY ANY /api/users.{_format}
而且我知道添加一個函數參數:
public function getUsersAction($id){
return 'A specific users (with $id) details';
}
將這樣創建一條路線:
api_get_users GET ANY ANY /api/users/{userid}.{_format}
但是,如果我想這樣做,那么兩條路由都可用(如正確的REST API設計),該怎么辦?
我嘗試做類似的事情
public function getUsersAction($userid = NULL){
但這沒有用(不是很大的驚喜)。
我很確定我錯過了一個簡單的難題,但是我不知道該怎么辦。
根據文檔 ,創建一個getUserAction($id)
和一個getUsersAction()
(不是復數)應該可以工作:
class UserController implements ClassResourceInterface { // ... public function getUsersAction() {} // "get_users" [GET] /users public function getUserAction($slug) {} // "get_user" [GET] /users/{slug} // or when omittig "User": public function cgetAction() {} // "get_users" [GET] /users public function getAction($slug) {} // "get_user" [GET] /users/{slug} // ... }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.