在我的WebDev服务器上,我正在尝试测试控制器的操作是通过其原始IP还是通过其DNS请求的。我已经尝试查看控制器的HttpRequest.Url.HostNameType
,但即使我在浏览器中输入本地IP,它似乎也会解析为DNS。有任何想法吗?提前谢谢。
答案 0 :(得分:1)
该信息在HTTP请求的Host
标头中传递,因此您应该能够像这样访问它:
var requestedHost = Request.Headers["Host"];
如果请求是针对IP地址,则应返回该IP地址字符串。否则,它将是他们使用的任何主机名。
答案 1 :(得分: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);
输出:www.contoso.com:8080