Pregunta

Tengo una URL base:

http://my.server.com/folder/directory/sample

Y uno relativo:

../../other/path

¿Cómo obtener la URL absoluta de esto? Es bastante sencillo usar la manipulación de cadenas, pero me gustaría hacerlo de forma segura, usando la clase Uri o algo similar.

Es para una aplicación estándar de C #, no para ASP.NET.

¿Fue útil?

Solución

var baseUri = new Uri("http://my.server.com/folder/directory/sample");
var absoluteUri = new Uri(baseUri,"../../other/path");

O

Uri uri;
if ( Uri.TryCreate("http://base/","../relative", out uri) ) doSomething(uri);

Otros consejos

Algunos podrían estar buscando una solución Javascript que permita la conversión de URL 'sobre la marcha' al depurar

var absoluteUrl = function(href) {
    var link = document.createElement("a");
    link.href = href;
    return link.href;
} 

usar como:

absoluteUrl("http://google.com")

  

http://google.com/

o

absoluteUrl("../../absolute")

  

http://stackoverflow.com/absolute

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top