【问题标题】:FOSRestBundle 2.4 | How to load rest type routeFOSRestBundle 2.4 |如何加载休息型路线
【发布时间】:2019-02-26 12:29:08
【问题描述】:

当我将项目从 2.8 升级到 Symfony 3.4 时,我将 FOSUserBundle 从 2.1 升级到 2.4。

使用与之前相同的代码,以及这个 yml 文件:

# app/config/routing.yml
api_request_backend:
    type: rest
    prefix: /api
    resource: "@AppBundle/Resources/config/default.yml"

-

# AppBundle/Resources/config/default.yml
api:
    type: rest    # This resource will have RESTful routes
    prefix:
    resource: "@AppBundle\Controller\ApiController"
    name_prefix: api_
apiV2:
    type: rest    # This resource will have RESTful routes
    prefix: /v2
    resource: "@AppBundle\Controller\ApiV2Controller"
    name_prefix: api_v2_
api_user:
    type: rest    # This resource will have RESTful routes
    prefix:
    resource: "@AppBundle\Controller\ApiUserController"
    name_prefix: api_

我收到此错误:

处理异常时抛出的异常 (Symfony\Component\Config\Exception\FileLoaderLoadException:文件 “/var/www/project/src/AppBundle/Resources/config/default.yml” 确实 中不包含有效的 YAML /var/www/project/src/AppBundle/Resources/config/default.yml(其中 正在从“/var/www/project/app/config/routing.yml”导入)。 确保有支持“rest”类型的加载器。)

我哪里错了?我还尝试将 FOSRestBundle 降级到 2.3.1(我读过这个 here),但没有任何变化。

【问题讨论】:

  • 我尝试增强代码的格式(缩进),但有两次 prefix 缺失值。那是行不通的。请您看一下您的代码示例并最终更正这两行吗?
  • 前缀字段不是必需的,下面的解决方案适用于空值。
  • 谢谢!我与同样的错误作斗争。您的问题和答案是宝贵的资源。

标签: symfony routing yaml fosrestbundle


【解决方案1】:

对于最新 (>3.0),您必须将路由类型从 rest 更改为 annotation。

【讨论】:

    【解决方案2】:

    问题在于无效的 YAML。以下作品:

    # app/config/routing.yml
    api_request_backend:
        type: rest
        prefix: /api
        resource: '@AppBundle/Resources/config/default.yml' 
    

    # AppBundle/Resources/config/default.yml
    api:
        type: rest    # This resource will have RESTful routes
        resource: '@AppBundle\Controller\ApiController'
        name_prefix: api_
    

    感谢xabbuh 的修复

    【讨论】:

    • 我看到的唯一相关变化是将双引号转换为单引号。这真的是解决方案还是我在这里遗漏了更重要的东西。
    • 是的,升级后双引号无效
    猜你喜欢
    • 2016-06-04
    • 2014-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-14
    • 2019-12-30
    • 2012-06-18
    • 1970-01-01
    相关资源
    最近更新 更多