遇到FOSRestBundle自定义路由问题,我按照下面的链接但是没有解决我的问题。我的问题是,当我没有指定格式时,它默认为XML而不是JSON。
How to specify default format for FOS\RestBundle to json?
Config.yml
fos_rest:
routing_loader:
default_format: json
include_format: true
param_fetcher_listener: force
body_listener: true
allowed_methods_listener: true
view:
view_response_listener: 'force'
formats:
json: true
xml: true
format_listener:
rules:
- { path: '^/api', fallback_format: json, priorities: ['json', 'xml'], prefer_extension: true }
的routing.yml
get_forms:
pattern: /api/v4/forms.{_format}
defaults: { _controller: NmpoloRestBundle:Form:cget, _format: ~ }
当我点击时,有谁知道为什么我的默认设置会转到XML: www.test.com/api/v4/forms
其XML格式不是JSON。任何帮助,将不胜感激。 THX
答案 0 :(得分:1)
我通过将以下内容放在app/config/config.yml
fos_rest:
//...
routing_loader:
default_format: json
我的完整配置是
fos_rest:
serializer:
serialize_null: true
routing_loader:
default_format: json
format_listener: true
view:
view_response_listener: 'force'
无需在路由文件中进行额外配置