使用FOSRestBundle时,使用注释设置路径允许的方法

时间:2016-04-15 09:12:21

标签: php symfony fosrestbundle

我想知道是否有一种简单的方法可以使用type: rest中的routing.yml来修改通过FOSRestBundle生成的路由的允许方法:

例如我有:

public function regularAction()
{
}

转化为:

Name                             Method     Scheme   Host   Path
-------------------------------- ---------- -------- ------ -----------------------
pria_core_regular                GET        ANY      ANY    /regular.{_format}

我可以更改使用FOS\RestBundle\Controller\Annotations\Route\Method注释生成的路径:

/**
 * @Route("/test-regular")
 */
public function regularAction()
{
}

然后路线就像我预期的那样:

Name                             Method     Scheme   Host   Path
-------------------------------- ---------- -------- ------ -----------------------
pria_core_regular                GET        ANY      ANY    /test-regular.{_format}

但是我不能对重写允许的方法做同样的事情。例如:

@Method({"GET", "POST"})

使用@Method无效。这是否被FOSRestBundle故意禁用?

1 个答案:

答案 0 :(得分:0)

要设置请求方法,请执行以下路由:

// Get Action
public function getRegular() {}

// Post Action 
public function postRegular() {}

编辑:道歉,我不明白100%的问题,在你的控制器方法前加上get / post等会设置方法,请参阅here