Uri 中允许的域/子域

发布于 2024-09-19 10:13:13 字数 369 浏览 18 评论 0原文

我在 Uri 中有一些网址。我如何检查此网址是否属于某个域或子域的一部分。

示例:

URL:

http://www.example.com/something/index.apsx?lala=ddsadasd&dasdas=dsdas&dsdsd=ikpi&das=asd

允许:

http://www.example.com/something/

不允许:

http://www.example.com/some/

如果 URL 在允许的域中,则代码继续执行。

I have some url in Uri. How can i check if this url is part of some domain or subdomain.

Example:

URL:

http://www.example.com/something/index.apsx?lala=ddsadasd&dasdas=dsdas&dsdsd=ikpi&das=asd

allowed:

http://www.example.com/something/

not aloowed:

http://www.example.com/some/

if URL is in allowed domain then code continue executing.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

独守阴晴ぅ圆缺 2024-09-26 10:13:13
Uri uri = new Uri("http://www.example.com/folder/page.ext?foo=bar");
uri.Segments.Contains("folder"); // true
uri.DnsSafeHost.Split('.').Contains("example"); // true

uri.Segements 是:

  • “/”
  • “something/”
  • “index.ext”

DnsSafeHost.Split('.') 是:

  • www
  • example
  • com,

因此您可以使用这些数据如你所愿。

编辑:

uri.Segments.Any(s => String.Equals(s.Replace("/", String.Empty), "something", StringComparison.OrdinalIgnoreCase));
uri.DnsSafeHost.Split('.').Any(s => String.Equals(s, "example", StringComparison.OrdinalIgnoreCase));
Uri uri = new Uri("http://www.example.com/folder/page.ext?foo=bar");
uri.Segments.Contains("folder"); // true
uri.DnsSafeHost.Split('.').Contains("example"); // true

uri.Segements are:

  • "/"
  • "something/"
  • "index.ext"

and DnsSafeHost.Split('.') are:

  • www
  • example
  • com

so you can manipulate with this data as you want.

Edit:

uri.Segments.Any(s => String.Equals(s.Replace("/", String.Empty), "something", StringComparison.OrdinalIgnoreCase));
uri.DnsSafeHost.Split('.').Any(s => String.Equals(s, "example", StringComparison.OrdinalIgnoreCase));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文