【发布时间】:2011-04-29 11:55:37
【问题描述】:
我在字符串中有一个相对或绝对 url。我首先需要知道它是绝对的还是相对的。我该怎么做呢?然后我想确定 url 的域是否在允许列表中。
这是我的允许列表,例如:
string[] Allowed =
{
"google.com",
"yahoo.com",
"espn.com"
}
一旦我知道它是相对的还是绝对的,我认为它相当简单:
if (Url.IsAbsolute)
{
if (!Url.Contains("://"))
Url = "http://" + Url;
return Allowed.Contains(new Uri(Url).Host);
}
else //Is Relative
{
return true;
}
【问题讨论】:
-
别忘了有些人使用
www子域。