Projet

Général

Profil

Development #17688

cellule JSON : envoyer le json_response.status_code dans le contexte

Ajouté par Thomas Noël il y a presque 7 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
18 juillet 2017
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Quand la requête vers le json échoue, on ne revoit rien dans le contexte (json=None).

Ca serait mieux de renvoyer un 'json_status_code' en parallèle (même en cas de 200).

Et éventuellement, si c'est pas 200, tenter de faire un json.loads du payload et l'envoyer dans json_error_payload (django-rest-framework envoie des infos dans les 404, souvent)

S'il a des additional_data (#17185) faire de même avec <key>_status_code et <key>_error_payload


Fichiers

Révisions associées

Révision 109cccf6 (diff)
Ajouté par Thomas Noël il y a presque 7 ans

json cell: add url, status and error in context (#17688)

Historique

#1

Mis à jour par Thomas Noël il y a presque 7 ans

et pendant qu'on est là, ajouter json_url avec le résultat de l'URL calculée

#2

Mis à jour par Thomas Noël il y a presque 7 ans

voilà, qui s'applique après #17185

#3

Mis à jour par Thomas Noël il y a presque 7 ans

  • Statut changé de Nouveau à En cours
#4

Mis à jour par Frédéric Péters il y a presque 7 ans

Ça me semble ok; dans les tests, dans la nouvelle partie ajoutée pour tester la récup de plusieurs url en erreur, ajouter des assert context['json_error'] = ... et assert context['plop_error'] = ... ?

#5

Mis à jour par Thomas Noël il y a presque 7 ans

J'ai profité d'un rebase pour faire une version plus étoffée, dans laquelle j'élargis un succès à tous les code 2xx. Et on ne tente de récupérer du json en cas d'erreur que si y'a un content-type qui dit application/json.

#6

Mis à jour par Frédéric Péters il y a presque 7 ans

                    extra_context[data_key + '_error'] = 'invalid_json'
                    pass

Le pass en trop; ack une fois cette ligne retirée.

#7

Mis à jour par Thomas Noël il y a presque 7 ans

  • Statut changé de En cours à Résolu (à déployer)

pass retiré (vivement que cette journée se termine)

commit 109cccf6563a6aa271acd539cd797e79a31ba2a0
Author: Thomas NOEL <tnoel@entrouvert.com>
Date:   Thu Jul 20 15:03:47 2017 +0200

    json cell: add url, status and error in context (#17688)

#8

Mis à jour par Frédéric Péters il y a plus de 5 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF