je dois demander l'URL suivante dans mon application:System.Net.Uri avec des personnages urlencoded
http://feedbooks.com/type/Crime%2FMystery/books/top
Quand je lance le code suivant:
Uri myUri = new Uri("http://feedbooks.com/type/Crime%2FMystery/books/top");
Le constructeur Uri
décode le %2F
en un littéral /
, et j'obtiens une erreur 404 parce qu'il a changé l'URL à:
http://feedbooks.com/type/Crime/Mystery/books/top
La classe Uri
a un constructeur qui prend un paramètre dontEscape
, mais ce constructeur est obsolète et le définir sur true
n'a aucun effet.
Ma première pensée était de faire quelque chose comme:
Uri myUri = new Uri("http://feedbooks.com/type/Crime%252FMystery/books/top");
Avec l'espoir qu'il convertirait %25
dans un %
littéral, mais cela ne fonctionne pas non plus.
Des idées pour créer un objet Uri
correct pour cette URL particulière dans .NET?
euh ... avez-vous essayé \% (ou \\%) ... :( – apandit
J'aime la question. Maintenant, s'il vous plaît donner une réponse Java pour java.io.URI qui a la même sacrément problème, mais sans les drapeaux (aussi loin que je peux dire)! – davidbak