Project

General

Profile

Development #68414

TypeError: 'NoneType' object is not subscriptable

Added by Sentry Io 5 months ago. Updated 5 months ago.

Status:
Nouveau
Priority:
Normal
Assignee:
-
Target version:
-
Start date:
25 August 2022
Due date:
% Done:

0%

Estimated time:
Patch proposed:
No
Planning:
No

Description

https://sentry.entrouvert.org/entrouvert/publik/issues/78388/

TypeError: 'NoneType' object is not subscriptable
  File "passerelle/utils/jsonresponse.py", line 129, in api
    resp = f(*args, **kwargs)
  File "passerelle/views.py", line 552, in perform
    result = self.endpoint(request, **params)
  File "passerelle/apps/photon/models.py", line 184, in search
    result = self.addresses(
  File "passerelle/apps/photon/models.py", line 155, in addresses
    if not feature['geometry']['type'] == 'Point':

Error occurred while processing request

History

#1

Updated by Nicolas Roche 5 months ago

  • Project changed from Suivi des traces to Passerelle

Le serveur geojson semble avoir renvoyé une feature vide :

{
  'features': [None]
}

#2

Updated by Thomas Noël 5 months ago

Si on constate effectivement que ce connecteur peut répondre du geojson invalide, alors il faut s'en protéger au plus tôt, genre :

  • vérifier que result_response.json() ne plante pas (que c'est bien du json)
  • vérifier que result_response.json().get('features') est une liste
  • vérifier que chaque élément de cette liste est un dictionnaire contenant les deux clés geometry et properties
  • et que geometry.type existe et est Point
  • etc.
#3

Updated by Thomas Noël 5 months ago

  • Tracker changed from Bug to Development

Je passe le ticket en "développement" car le bug n'est pas vraiment dans Passerelle :)

#4

Updated by Nicolas Roche 5 months ago

Si on constate effectivement

Non, j'ai pas réussi à reproduire la réponse du serveur.
Dans le doute, je vais laisser en l'état en attendant de nouvelles occurrences de la sentry,
histoire de ne pas ajouter du code pour rien.

Also available in: Atom PDF