1

我一直在尝试在 Symfony 中找到版本控制的解决方案。在 Symfony 中进行 API 版本控制的最佳方法是什么。在 Laravel 中,这非常简单,请参见此处

您只需将不同文件夹(如 V1/V2...)中的所有内容分开,然后创建指向该文件夹(命名空间)的路由。但是 Symfony 的工作方式不同,它使用注解来创建路由

4

1 回答 1

6

Symfony 还提供了简单的方法来对代码进行版本控制。因此,如果您想将控制器分隔在不同的文件夹中v1,例如v2等,那么您可以在导入路由时为每个文件夹添加前缀。

所以在 config/routes/annotations.yamlorapp/config/routing.yml文件中你可以定义:

v1_controllers:
    resource: ../../src/Controller/v1  # add correct path
    type: annotation
    prefix: '/v1'

v2_controllers:
    resource: ../../src/Controller/v2  # add correct path
    type: annotation
    prefix: '/v2'

所以在这之后v1文件夹中的所有路由都会有前缀v1

请检查symfony 路由

于 2018-06-05T19:20:04.717 回答