bri*_*njb 5 elixir phoenix-framework
我在没有使用该--no-html选项的情况下启动了一个凤凰项目,现在我正在尝试确保404和500错误呈现为JSON.该项目始于凤凰城1.1.0,并已更新至1.1.4.
我已将config/config.exs文件的render_errors(下config :my_app, MyApp.Endpoint)修改为[view: MyApp.ErrorView, format: "json", accepts: ~w(json)].
这些路由都接受JSON,目前它们都不接受HTML.
我修改了web/web.ex文件以删除view函数中的Phoenix.HTML ,我修改了web/views/error_view.ex渲染JSON.
但是在这一点上,两者404和500错误仍然返回html.
你有没有更新config.exs?
config :my_app, MyApp.Endpoint,
# ...
render_errors: [accepts: ~w(html json)],
# ...
Run Code Online (Sandbox Code Playgroud)
什么样的HTML返回?也许它是你的开发环境的phoenix调试页面,你可以禁用它config/dev.exs
config :my_app, MyApp.Endpoint,
# ...
debug_errors: false,
# ...
Run Code Online (Sandbox Code Playgroud)