首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >是否从URL获取主机域?

是否从URL获取主机域?
EN

Stack Overflow用户
提问于 2013-01-08 17:36:02
回答 8查看 240.4K关注 0票数 171

如何从字符串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
EN

回答 8

Stack Overflow用户

发布于 2013-01-08 17:39:18

使用Uri类和Host属性

Uri url = new Uri(@"http://support.domain.com/default.aspx?id=12345");
Console.WriteLine(url.Host);
票数 29
EN

Stack Overflow用户

发布于 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
票数 21
EN

Stack Overflow用户

发布于 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

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14211973

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档