在每个 POST 上返回 400 BAD REQUEST - fosrestbundle,Symfony3
Returning 400 BAD REQUEST on each POST - fosrestbundle, Symfony3
我在 Symfony3 上使用 fosrestbundle 创建服务器端 web-api.
fos_rest app/config/config.yml的配置
fos_rest:
param_fetcher_listener: true
body_listener: true
format_listener:
enabled: true
rules:
- { path: ^/api, priorities: [ json ], fallback_format: json, prefer_extension: true }
view:
view_response_listener: 'force'
formats:
xml: true
json : true
templating_formats:
html: true
force_redirects:
html: true
failed_validation: HTTP_BAD_REQUEST
default_engine: twig
routing_loader:
default_format: json
每当我使用 Content-Type: x-www-form-urlencoded 发帖时,控制器都会受到攻击。每次我使用 application/json 时,响应都是 400 BAD REQUEST。但我需要它是 Content-Type: application/json。请告诉我我应该在 fos_rest 配置中更改什么,以便它可以接受 application/json。提前致谢。
N.B。我按照书本试了Body Listener。但没有运气。版本更改可能是问题所在。我不知道。
如@xabbuh 所述,您在请求时尝试使用错误的数据格式。
您的请求应该如下所示,而不是上面的内容。
我在 Symfony3 上使用 fosrestbundle 创建服务器端 web-api.
fos_rest app/config/config.yml的配置
fos_rest:
param_fetcher_listener: true
body_listener: true
format_listener:
enabled: true
rules:
- { path: ^/api, priorities: [ json ], fallback_format: json, prefer_extension: true }
view:
view_response_listener: 'force'
formats:
xml: true
json : true
templating_formats:
html: true
force_redirects:
html: true
failed_validation: HTTP_BAD_REQUEST
default_engine: twig
routing_loader:
default_format: json
每当我使用 Content-Type: x-www-form-urlencoded 发帖时,控制器都会受到攻击。每次我使用 application/json 时,响应都是 400 BAD REQUEST。但我需要它是 Content-Type: application/json。请告诉我我应该在 fos_rest 配置中更改什么,以便它可以接受 application/json。提前致谢。
N.B。我按照书本试了Body Listener。但没有运气。版本更改可能是问题所在。我不知道。
如@xabbuh 所述,您在请求时尝试使用错误的数据格式。
您的请求应该如下所示,而不是上面的内容。