我有一个完整的 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"
);
关于c# - 结合完整的 URL 和虚拟 URL,就像浏览器一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5942612/