c# - 结合完整的 URL 和虚拟 URL,就像浏览器一样

标签 c# uri relative-path

我有一个完整的 URL,例如:A: <a href="http://www.domain.com/aaa/bbb/ccc/ddd/eee.ext" rel="noreferrer noopener nofollow">http://www.domain.com/aaa/bbb/ccc/ddd/eee.ext</a> .

我有一个相对 URL,例如:B: ../../fff.ext

我正在寻找 .NET C# 中最简单的方法来组合这两个 URL 并获得: C: <a href="http://www.domain.com/aaa/bbb/fff.ext" rel="noreferrer noopener nofollow">http://www.domain.com/aaa/bbb/fff.ext</a>

这就像浏览器所做的那样:您正在浏览 URL A,然后页面的 HTML 有一个超链接 B,生成的 URL 是 C。

最佳答案

查找“PathCanonicalize”可能会更幸运。

此外,根据我的发现,重载之一 Uri构造函数可以处理这个:

Uri combined = new Uri(
  new Uri("http://www.domain.com/aaa/bbb/ccc/ddd/eee.ext", UriKind.Absolute),
  "../../fff.ext"
);

Proof is in the pudding

关于c# - 结合完整的 URL 和虚拟 URL,就像浏览器一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5942612/

相关文章:

c# - 自动将 JWT 加载到 User.Identity (ASP.NET Core 3.1)

Javascript 显示来自 uri 的图像

html - Asp.net MVC 不同的路由导致相对寻址问题

c# - WCF 服务传递对象缓慢。那是正常的吗?

c# - 业务逻辑类

delphi - RemObjects SDK参数可以通过URI传递吗?

javascript - nodeJS require.paths 解决问题

drupal - 如何在drupal中获取站点/所有文件夹的绝对路径?

C# DateTimePicker 最大日期范围

android - 转换安卓图片URI