Project

General

Profile

Bug #43223

opendatasoft, 'NoneType' object is not iterable

Added by Frédéric Péters 8 days ago. Updated 5 days ago.

Status:
Solution déployée
Priority:
Normal
Assignee:
Target version:
-
Start date:
22 May 2020
Due date:
% Done:

0%

Patch proposed:
Yes
Planning:
No

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

0001-opendatasoft-manage-empty-content-returned-43223.patch View (3.41 KB) Nicolas Roche, 22 May 2020 01:21 PM

0001-opendatasoft-manage-error-returned-43223.patch View (2.76 KB) Nicolas Roche, 22 May 2020 04:52 PM

0002-opendatasoft-manage-empty-contents-returned-43223.patch View (5.06 KB) Nicolas Roche, 22 May 2020 04:52 PM

Associated revisions

Revision 7e1e0123 (diff)
Added by Nicolas Roche 5 days ago

opendatasoft: manage error returned (#43223)

History

#1 Updated by Nicolas Roche 8 days ago

#2 Updated by Frédéric Péters 8 days ago

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" 
}

#3 Updated by Nicolas Roche 8 days ago

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).

#4 Updated by Frédéric Péters 5 days ago

  • Status changed from Solution proposée to Solution validée

Il y aura peut-être des bouts de 0002 à tirer mais disons plus tard ailleurs. Le 0001 ok.

#5 Updated by Nicolas Roche 5 days ago

  • Status changed from Solution validée to 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)

#6 Updated by Frédéric Péters 5 days ago

  • Status changed from Résolu (à déployer) to Solution déployée

Also available in: Atom PDF