IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

UrlEncode / UrlDecode: mauvais encodage décodage?


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 201
    Par défaut UrlEncode / UrlDecode: mauvais encodage décodage?
    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

  2. #2
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Un UrlDecode("28+Rue+de+Ch%c3%a2teaudun%2c+75009+Paris%2c+France")te retourne pas le résultat attendu?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 201
    Par défaut
    Non c'est l'inverse: un HttpUtility.UrlEncode("28 Rue de Châteaudun, 75009 Paris, France") me retourne: 28+Rue+de+Ch%c3%a2teaudun%2c+75009+Paris%2c+France

    Ce qui n'est pas normale, puisque l'encodage du caractères â est normalement %E2 (et non %c3%a2).

    Le problème que j'ai exactement c'est que mon url j'ai 28+Rue+de+Ch%E2teaudun%2C+75009+Paris%2C+France (ce qui est correct).
    Mais HttpUtility.UrlDecode("28+Rue+de+Ch%E2teaudun%2C+75009+Paris%2C+France") retourne: 28 Rue de Chteaudun, 75009 Paris, France

    Donc il y a un soucis quelque part :/

    Pour résumé, .Net encode la lettre â en %c3%a2, alors qu'il devrai le faire en %e2... et il ne comprend pas %e2 lors du decode...

  4. #4
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    L'url n'est pas encodé en .NET?

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    201
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 201
    Par défaut
    Non l'url est encodé depuis un javascript (utilisation de GoogleMaps API).

    Mais je ne comprend pas que .NET encode différent un caractère alors que tout le reste l'encode correctement

  6. #6
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Par défaut
    Tu peut essayer avec HtmlEncode / HtmlDecode pour voir

Discussions similaires

  1. Encodage & Décodage de fichier AMF avec java
    Par Kadran dans le forum Persistance des données
    Réponses: 1
    Dernier message: 04/03/2009, 12h24
  2. problème d'encodage décodage
    Par dj.motte dans le forum Général Python
    Réponses: 2
    Dernier message: 13/10/2008, 13h12
  3. [MySQL] Mauvais encodage MySQL
    Par blueice dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 06/08/2008, 12h39
  4. (java.net.) URLEncoder / URLDecoder
    Par Invité dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 22/02/2008, 12h19
  5. [MySQL] mauvais encodage, lorsque modifié dans la base
    Par __fabrice dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 09/02/2007, 15h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo