像浏览器一样组合完整的 URL 和虚拟 URL
本文关键字:URL 组合 虚拟 一样 浏览器 | 更新日期: 2023-09-27 17:55:34
我有一个完整的网址,比如:A: http://www.domain.com/aaa/bbb/ccc/ddd/eee.ext
。
我有一个相对网址,例如:B: ../../fff.ext
我正在寻找 .NET C# 中最简单的方法来组合这两个 URL 并获得: C: http://www.domain.com/aaa/bbb/fff.ext
这就像浏览器所做的:您正在浏览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"
);
证据就在布丁里