Mieszanie parametrów trasy i zapytania za pomocą FOSRestBundle z Symfony

Używam Symfony2 i FOSRestBundle Próbuję zaimplementować metody API, które mają pewną liczbę stałych parametrów zdefiniowanych w trasie wraz z niektórymi opcjonalnymi parametrami, które mogą istnieć w ciągu zapytania.

Na przykład:

 http://somesite.com/api/method/a/b
 http://somesite.com/api/method/c/d?x=1&y=2

Wedługdokumentacja dla FOSRestBundle, ParamFetcher jest właściwym sposobem na to, używając adnotacji @QueryParam. Jednak mam już kontroler zdefiniowany tak:

 use Symfony\Bundle\FrameworkBundle\Controller\Controller;
 use FOS\RestBundle\Controller\Annotations\Get;
 use FOS\RestBundle\Controller\Annotations\View;

 class MyController extends Controller
 {

   /**
    * @Get("/method/{a}/{b}")
    * @View()
    */
   public function getMethodAction($a, $b)
   {
     // do stuff

     return array('foo' => 'bar');
   }

 }

Teraz wydaje mi się, że muszę być w stanie uzyskać dostęp do instancji ParamFetcher, ale nie wiem jak (a wyszukiwania Google nie pomogły zbyt wiele). Wiem z dokumentacji, że mogę po prostu zmienić podpis metody, aby włączyć ParamFetcher, jednak gdy to zrobię, przenosi parametry do ciągu zapytania, którego nie mogę mieć.

Czy istnieje sposób na połączenie tych dwóch elementów, czy powinienem zrezygnować z ParamFetcher i przejść do sprawdzania żądania bezpośrednio przy użyciu wbudowanego obiektu Request firmy Symfomy?

questionAnswers(2)

yourAnswerToTheQuestion