Comment décoder un paramètre d'URL encodé à l'aide de C #?
Par exemple, prenez cette URL:
my.aspx?val=%2Fxyz2F
Server.UrlDecode(xxxxxxxx)
string decodedUrl = Uri.UnescapeDataString(url)
ou
string decodedUrl = HttpUtility.UrlDecode(url)
L'URL n'est pas entièrement décodé en un seul appel. Pour décoder complètement, vous pouvez appeler l'une de ces méthodes en boucle:
private static string DecodeUrlString(string url) {
string newUrl;
while ((newUrl = Uri.UnescapeDataString(url)) != url)
url = newUrl;
return newUrl;
}
As-tu essayé HttpServerUtility.UrlDecode
ou HttpUtility.UrlDecode
?
Essaye ça:
string decodedUrl = HttpUtility.UrlDecode("my.aspx?val=%2Fxyz2F");
Essayer:
var myUrl = "my.aspx?val=%2Fxyz2F";
var decodeUrl = System.Uri.UnescapeDataString(myUrl);