2017-05-26 13 views
1

.NET Framework 4.6.2を使用してASP.NET Core MVC/WebAPIプロジェクトを作成しました。私のソリューションでは、私は各環境(DEV、ステージング、PROD)ごとに異なるファビコンイメージを持っています。 MVCページが表示されたら、私はブラウザをその環境のための正しいfaviconに問題なく指し示すことができます。しかし、Webブラウザから直接行われたAPI GET呼び出しは、常にサイトルートのfavicon.icoにデフォルト設定されています。とにかく、設定可能な値にルーティングするようにして、表示するものを選択できるようにしますか?MVC favicon.ico routing for WebAPI

答えて

1

これはミドルウェアで行うことができます。 Startup.cs ConfigureメソッドのUseMiddleware<YourCustomMiddlware>UseStaticFiles()の前に来るようにしてください。そうすれば、通常の静的ファイルミドルウェアが行う前に、要求を傍受して応答するoppertunityが得られます。

カスタムミドルウェアでは、リクエストのURLを確認するだけで、ルートのfavアイコンが表示されている場合は、Dev、Staging、またはPRODで実行されているかどうかを確認して、

+0

これはうまくいくはずですが、私はそれがルートをマッピングすることによってできると思っていました。これが不可能であることが判明した場合、私はこれを答えとしてマークします。いずれにせよ、あなたは答えに+1を得る。 – Swazimodo

+0

ルートマッピングでそれを行う方法があれば、それはクールです。私はそれが可能な場合、ルートマッピングを介してそれを行う方法を知らない。そんなことができるのであれば、他の誰かがチャイムしてくれることを願っています。 –