如何从字符串URL中获取主机域?
GetDomain有1个输入"URL",1个输出“域”
Example1
INPUT: http://support.domain.com/default.aspx?id=12345
OUTPUT: support.domain.com
Example2
INPUT: http://www.domain.com/default.aspx?id=12345
OUTPUT: www.domain.com
Example3
INPUT: http://localhost/default.aspx?id=12345
OUTPUT: localhost
发布于 2013-01-08 17:39:18
发布于 2014-07-12 13:59:49
尝试下面的语句
Uri myuri = new Uri(System.Web.HttpContext.Current.Request.Url.AbsoluteUri);
string pathQuery = myuri.PathAndQuery;
string hostName = myuri.ToString().Replace(pathQuery , "");
Example1
Input : http://localhost:4366/Default.aspx?id=notlogin
Ouput : http://localhost:4366
Example2
Input : http://support.domain.com/default.aspx?id=12345
Output: support.domain.com
发布于 2015-03-28 00:33:27
最好的方法,也是正确的方法是使用Uri.Authority
字段
像这样加载和使用Uri:
Uri NewUri;
if (Uri.TryCreate([string with your Url], UriKind.Absolute, out NewUri))
{
Console.Writeline(NewUri.Authority);
}
Input : http://support.domain.com/default.aspx?id=12345
Output : support.domain.com
Input : http://www.domain.com/default.aspx?id=12345
output : www.domain.com
Input : http://localhost/default.aspx?id=12345
Output : localhost
如果你想操纵Url,使用Uri对象是一个很好的方法。https://msdn.microsoft.com/en-us/library/system.uri(v=vs.110).aspx
https://stackoverflow.com/questions/14211973
复制相似问题