ASP.NET MVC で Web アプリのベース URL を取得するにはどうすればいいですか? 質問する

ASP.NET MVC で Web アプリのベース URL を取得するにはどうすればいいですか? 質問する

ASP.NET MVCアプリケーションのルートURLを素早く確認するにはどうすればいいでしょうか?つまり、IISがアプリケーションを次のURLで提供するように設定されている場合、http://example.com/foo/bar、リクエストから現在の URL を取得し、アクションを再ルーティングすると壊れてしまうような脆弱な方法で URL を切り刻むことなく、信頼性の高い方法でその URL を取得できるようにしたいと思います。

ベース URL が必要な理由は、この Web アプリケーションが、コールバックの目的で呼び出し元の Web アプリケーションへのルートを必要とする別の Web アプリケーションを呼び出すためです。

ベストアンサー1

利用可能な Request オブジェクトがあると仮定すると、以下を使用できます。

string.Format("{0}://{1}{2}", Request.Url.Scheme, Request.Url.Authority, Url.Content("~"));

利用できない場合は、コンテキストを介してアクセスできます。

var request = HttpContext.Current.Request

おすすめ記事