Ich habe eine relative oder absolute URL in einer Zeichenfolge. Ich muss zuerst wissen, ob es absolut oder relativ ist. Wie mache ich das? Ich möchte dann feststellen, ob die Domäne der URL in einer Liste erlaubt ist.Ermitteln, ob absolute oder relative URL
Hier ist meine Zulassungsliste, als Beispiel:
string[] Allowed =
{
"google.com",
"yahoo.com",
"espn.com"
}
Sobald ich weiß, ob seine relative oder absolute, seine ziemlich einfach denke ich:
if (Url.IsAbsolute)
{
if (!Url.Contains("://"))
Url = "http://" + Url;
return Allowed.Contains(new Uri(Url).Host);
}
else //Is Relative
{
return true;
}
Vergessen Sie nicht, dass einige Personen eine Subdomain "www" verwenden. – icktoofay
Duplikat von http://stackoverflow.com/questions/2201171/determine-if-a-url-is-absolute-or-relative-from-vb –