我有一个基本网址:
http://my.server.com/folder/directory/sample
还有一个亲戚:
../../other/path
如何从中获取绝对URL?使用字符串操作非常简单,但我想使用Uri
类或类似的东西以安全的方式执行此操作。
这是一个标准的C#应用程序,而不是ASP.NET应用程序。
答案 0 :(得分:48)
var baseUri = new Uri("http://my.server.com/folder/directory/sample");
var absoluteUri = new Uri(baseUri,"../../other/path");
OR
Uri uri;
if ( Uri.TryCreate("http://base/","../relative", out uri) ) doSomething(uri);
答案 1 :(得分:0)
有些人可能正在寻找允许在调试时动态转换网址的Javascript解决方案
var absoluteUrl = function(href) {
var link = document.createElement("a");
link.href = href;
return link.href;
}
使用像:
absoluteUrl("http://google.com")
http://google.com/
或
absoluteUrl("../../absolute")
http://stackoverflow.com/absolute