Yur*_*dow 5 url-routing elixir http-headers mime-types phoenix-framework
在Phoenix Framework中,如何在Accepts中路由自定义媒体类型?
凤凰城自己的代码注释表明以下是所有必要的 - 加上deps的重新编译,尽管需要它逃脱了我.但是,这似乎不起作用:
config.exs:
[…]
config :plug, :mimes, %{
"application/vnd.api+json" => ["json-api"]
}
Run Code Online (Sandbox Code Playgroud)
router.ex:
pipeline :api do
plug :accepts, ["json-api"]
end
[…]
scope "/", SomeApp do
pipe_through :api
[…]
Run Code Online (Sandbox Code Playgroud)
some_test.ex:
setup do
conn = conn() |> put_req_header("accept", "application/vnd.api+json")
{:ok, conn: conn}
end
Run Code Online (Sandbox Code Playgroud)
所有测试的请求(使用来自设置的conn)都会收到HTTP 406响应.
结果证明以下是不充分的:
% touch deps/plug/mix.exs
% mix deps.compile plug
% mix clean
Run Code Online (Sandbox Code Playgroud)
相反,正如@josé-valim在问题的评论中建议的那样,删除整个_build目录就可以了.我来回走了几次以确定,每次我只是触摸和deps.compiled,没有快乐,每次我删除_build,快乐.
| 归档时间: |
|
| 查看次数: |
1290 次 |
| 最近记录: |