Bug #43223
opendatasoft, 'NoneType' object is not iterable
0%
Description
Traceback: File "/usr/lib/python2.7/dist-packages/passerelle/utils/jsonresponse.py" in api 128. resp = f(*args, **kwargs) File "/usr/lib/python2.7/dist-packages/passerelle/views.py" in perform 484. result = self.endpoint(request, **params) File "/usr/lib/python2.7/dist-packages/passerelle/apps/opendatasoft/models.py" in search 79. for record in result_response.json().get('records'): Exception Type: TypeError at /opendatasoft/ods/search Exception Value: 'NoneType' object is not iterable
Fichiers
Révisions associées
Historique
Mis à jour par Nicolas Roche il y a presque 4 ans
- Fichier 0001-opendatasoft-manage-empty-content-returned-43223.patch 0001-opendatasoft-manage-empty-content-returned-43223.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Frédéric Péters il y a presque 4 ans
Il faut plutôt détecter la situation d'erreur, taper un 'err': 1 et les informations détaillées.
Par exemple ici le contenu de la réponse d'opendatasoft était :
{ "error": "The query is invalid : Field 00 doesn't exist" }
Mis à jour par Nicolas Roche il y a presque 4 ans
- Fichier 0001-opendatasoft-manage-error-returned-43223.patch 0001-opendatasoft-manage-error-returned-43223.patch ajouté
- Fichier 0002-opendatasoft-manage-empty-contents-returned-43223.patch 0002-opendatasoft-manage-empty-contents-returned-43223.patch ajouté
L'erreur a été provoqué par le message d'erreur donné ci-dessus suite à cette requête au serveur OpenDataSoft :
https://data.toulouse-metropole.fr/api/records/1.0/search/?q=2019-08-30T12%3A00%3A00+00%3A00&apikey=3723bdda42023e31f44c81f5c6f2c13a9211fd7a1e806a7489464394&dataset=01-station-meteo-meteopole
Elle est corrigée par le premier patch en exploitant le message d'erreur retourné.
Dans le second patch, je corrige les cas où cette erreur serait produite par un mauvais contenu retourné par le serveur (dites-moi s'il faut retirer cette seconde partie).
Mis à jour par Frédéric Péters il y a presque 4 ans
- Statut changé de Solution proposée à Solution validée
Il y aura peut-être des bouts de 0002 à tirer mais disons plus tard ailleurs. Le 0001 ok.
Mis à jour par Nicolas Roche il y a presque 4 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 7e1e01230d74d5476d74fd19fe091477eb5428f2 Author: Nicolas ROCHE <nroche@entrouvert.com> Date: Fri May 22 16:09:41 2020 +0200 opendatasoft: manage error returned (#43223)
Mis à jour par Frédéric Péters il y a presque 4 ans
- Statut changé de Résolu (à déployer) à Solution déployée
opendatasoft: manage error returned (#43223)