Symfony2克隆了路由

时间:2015-06-18 19:31:26

标签: symfony fosrestbundle

我试图通过2条不同的路径访问1个资源:

api_v1:
    type:     rest
    prefix:   /api/v1
    resource: "@AppBundle/Resources/config/routing.yml"

app:
    type:     rest
    prefix:   /
    defaults: { _format: html }
    resource: "@AppBundle/Resources/config/routing.yml"

但永远的理由是第二条路线会覆盖第一条路线。当我调试:路由器我得到:

get_products    GET      ANY    ANY  /products.{_format}
post_products   POST     ANY    ANY  /products.{_format}
//etc...

但我期待

get_products    GET      ANY    ANY  /api/v1/products.{_format}
post_products   POST     ANY    ANY  /api/v1/products.{_format}
//etc...

get_products    GET      ANY    ANY  /products.{_format}
post_products   POST     ANY    ANY  /products.{_format}
//etc

我可能做错了什么?

1 个答案:

答案 0 :(得分:1)

您不能拥有2条同名路线。在这种情况下,第二条路线将覆盖先前定义的具有相同名称的路线,这正是您所描述的行为。

将2个网址指向完全相同的资源似乎也是错误的。使用(永久)重定向来处理此类情况。