フェニックスフレームワークでは、受諾でカスタムメディアタイプをどのようにルーティングしますか?フェニックスのフレームワーク:カスタムメディアタイプをルーティングする方法
Phoenix's own code commentsが必要であることを示し、デープの再コンパイルが必要であることを示していますが、その必要はありません。しかし、これは動作しないようです。
config.exs:
[…]
config :plug, :mimes, %{
"application/vnd.api+json" => ["json-api"]
}
router.ex:
pipeline :api do
plug :accepts, ["json-api"]
end
[…]
scope "/", SomeApp do
pipe_through :api
[…]
some_test.ex:
setup do
conn = conn() |> put_req_header("accept", "application/vnd.api+json")
{:ok, conn: conn}
end
すべてのテストの要求(セットアップからconnを使用して)HTTP 406応答を受信します。
設定で '' api-json "'をマッピングしていますが、 '' json-api "'を受け入れプラグに渡しています。あなたのコードの質問や入力ミスで入力ミスですか?それはおそらく犯人のように思われる –
@ChrisMcCordそれを指摘してくれてありがとう、私は恐れている質問の唯一の誤植です。つまり、私がテストしたコードにはその問題はなく、まだ動作しません。質問を修正しました。 –
「動作していないようですか?」と指定できますか?何が効いていないのですか?あなたは何を期待していましたか、何を得ていますか?また、依存関係が再コンパイルされていることを確認してください。疑わしい場合は 'rm -rf _build'を実行してください。 –