我只需要支持单一的API格式,即JSON,我不喜欢在我的路由中使用{_format}。是否可以删除它?
答案 0 :(得分: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}
选项,因为我不必在任何地方手动定义路由。
注意 - 请参阅我的原始答案,我做了一个编辑,可能也有助于您如何使用该捆绑包。我没有尝试过以你的方式使用这个包,所以我不确定这是否有效,但是docs使它看起来好像可以工作。