簡體   English   中英

Symfony2:FOSRest:允許“ / api / items”和“ api / items / {id}”的路由

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM