10

我只需要支持单一的 API 格式,即 JSON,我不喜欢在我的路线中使用 {_format}。是否可以删除它?

4

1 回答 1

17

在您的 config.yml 中,确保您已配置:

fos_rest:
    format_listener: true
    routing_loader:
        default_format: json
        include_format: false

希望有帮助

编辑:

FOSRestBundle Docs中有一个示例显示如何使用ClassResourceInterface. 最大的区别是您根本不必手动定义您的路线。该接口将根据您的类名和方法名生成您的路由。因此,为方法命名非常重要(您可以覆盖类名的使用方式,这在文档中显示)

例如,像这样:

use FOS\RestBundle\Routing\ClassResourceInterface {

class UserController implements ClassResourceInterface {

    public function cgetAction() {
        //return a list of all users
    }
}

将生成如下所示的路线:[GET] /users. 这就是我使用捆绑包的方式,效果很好。我也不必在{_format}任何地方使用该选项,因为我不必在任何地方手动定义路线。

注意-也请参阅我的原始答案,我进行了编辑,这也可能有助于您如何使用捆绑包。我还没有尝试过像你一样使用捆绑包,所以我不确定这是否可行,但文档让它看起来像是可行的。

于 2013-11-22T18:03:20.237 回答