Salut!
Voila je me retrouve devant un truc incroyable... Je passe dans une url, une adresse postale, que j'ai au préalable UrlEncodé.
L'adresse en question: 28 Rue de Châteaudun, 75009 Paris, France
Une fois encodé, le résulats doit donc être: 28+Rue+de+Ch%E2teaudun%2C+75009+Paris%2C+France
(Et oui, .net considère les '+' comme des ' ', mais ce n'est pas un soucis).
En javascript, pas de soucis, en php pas de soucis, mais en C#.NET le résultats devient:
28+Rue+de+Ch%c3%a2teaudun%2c+75009+Paris%2c+France
.Net craque complètement sur le caractères â...
J'ai tester deux trois chose, et en effet pour .net, â s'encode: %c3%a2. Alors que la norme veut que ce soir %e2.
Et bien sur le chemin inverse est identique...
Au final donc lorsque que je récupère mon paramètres venant de l'url, le nom de la rue n'est plus valable car une petit carré (caractère inconnu) remplace de â, et cela avant même que j'ai fait quoi que ce soit puisque notre charmant framework .NET décode lui même l'url...
J'ai du mal à croire que je puisse être tombé sur un bug, mais je ne comprend absolument pas ce qui se passe avec cette lettre...
Quelqu'un aurai une idée, ou à déjà était confronté à ce problème?
(Url Encoding W3C: http://www.w3schools.com/TAGS/ref_urlencode.asp)
Merci
Partager