Bug #8406
charger le json en entrée en tant que str(), pas unicode()
Début:
29 septembre 2015
Echéance:
% réalisé:
0%
Temps estimé:
Patch proposed:
Oui
Planning:
Description
Là on va se trouver à stocker de l'unicode (genre dans submission_context) et ça va faire mal.
Fichiers
Révisions associées
Historique
Mis à jour par Frédéric Péters il y a plus de 8 ans
- Fichier 0001-misc-load-json-input-as-strings-not-unicode-8406.patch 0001-misc-load-json-input-as-strings-not-unicode-8406.patch ajouté
- Statut changé de Nouveau à En cours
- Patch proposed changé de Non à Oui
Mis à jour par Thomas Noël il y a plus de 8 ans
Ouaip... Ack.
Quid de la lecture des réponses aux webservices ?
Mis à jour par Benjamin Dauvergne il y a plus de 8 ans
Le json_loads ne marche pas sur une simple chaîne je pense (cas limite il est vrai).
Mis à jour par Benjamin Dauvergne il y a plus de 8 ans
Dans le commit pour la validation des fichiers j'ai ça:
def json_encode_helper(d, charset): '''Encode a JSON structure into local charset''' if isinstance(d, unicode): return d.encode(charset) elif isinstance(d, list): return [json_encode_helper(e, charset) for e in d] elif isinstance(d, dict): new_d = {} for k, v in d.iteritems(): new_d[json_encode_helper(k, charset)] = json_encode_helper(v, charset) return new_d else: return d def json_encode(d, charset=None): return json_encode_helper(d, charset or get_publisher().site_charset)
Mis à jour par Frédéric Péters il y a plus de 8 ans
- Fichier 0001-misc-load-json-input-as-strings-not-unicode-8406.patch 0001-misc-load-json-input-as-strings-not-unicode-8406.patch ajouté
Oui, objects_hook marche uniquement pour les "objets" json, i.e. des dictionnaires; dans les cas d'usage actuels, ça me semblait suffisant.
Mais là je viens d'étendre pour le retour du wscall et j'ai du coup utilisé ton json_encode_helper.
Mis à jour par Thomas Noël il y a plus de 8 ans
mais pour le coup, il sert à quoi le JSONDecoder ?
Mis à jour par Frédéric Péters il y a plus de 8 ans
- Fichier 0001-misc-load-json-input-as-strings-not-unicode-8406.patch 0001-misc-load-json-input-as-strings-not-unicode-8406.patch ajouté
…
Mis à jour par Thomas Noël il y a plus de 8 ans
Et c'est propre et sans trop de magie ainsi, python 1.5, Ack.
Mis à jour par Frédéric Péters il y a plus de 8 ans
- Statut changé de En cours à Résolu (à déployer)
commit 475abd5a6c829a712d799cfe2e5a25cf701511aa Author: Frédéric Péters <fpeters@entrouvert.com> Date: Tue Sep 29 12:08:38 2015 +0200 misc: load json input as strings, not unicode (#8406)
Mis à jour par Frédéric Péters il y a plus de 8 ans
- Statut changé de Résolu (à déployer) à Fermé
misc: load json input as strings, not unicode (#8406)