2011-01-25 20 views
0

私のWebDevサーバーでは、コントローラのアクションが未加工IPまたはDNSによって要求されたかどうかをテストしようとしています。私はコントローラのHttpRequest.Url.HostNameTypeを調べてみましたが、ブラウザにローカルIPを入力してもDNSに解決されるようです。何か案は?前もって感謝します。コントローラアクションがDNSまたはIPによって要求されたかどうかをどのようにして知ることができますか?

答えて

1

var requestedHost = Request.Headers["Host"]; 

要求がIPアドレスのものであれば、そのIPアドレス文字列を返す必要があります。それ以外の場合は、使用したホスト名になります。

+0

これはトリックでした。ありがとうございました! – JustOnePixel

0

HttpContext.Current.Request.Url.Authority

ドメインネームシステム(DNS)ホスト名またはIPアドレスとサーバーのポート番号を取得します。

Uri baseUri = new Uri("http://www.contoso.com:8080/"); 
Uri myUri = new Uri(baseUri,"shownew.htm?date=today"); 

Console.WriteLine(myUri.Authority); 

出力:あなたはこのようにアクセスすることができるはずですので情報は、HTTPリクエストのヘッダHostに渡されていることwww.contoso.com:8080

関連する問題