Bug #56882
opendatasoft: les réponses 404 ne contiennent pas de JSON
Début:
11 septembre 2021
Echéance:
% réalisé:
0%
Temps estimé:
Patch proposed:
Oui
Planning:
Non
Description
https://sentry.entrouvert.org/entrouvert/publik/issues/51693/
JSONDecodeError: Expecting value: line 2 column 1 (char 1) (3 additional frame(s) were not displayed) ... File "passerelle/apps/opendatasoft/models.py", line 88, in call_search err_desc = result_response.json().get('error') File "requests/models.py", line 897, in json return complexjson.loads(self.text, **kwargs) File "__init__.py", line 348, in loads return _default_decoder.decode(s) File "json/decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "json/decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None Error occurred while processing request
Fichiers
Révisions associées
Historique
Mis à jour par Benjamin Dauvergne il y a plus de 2 ans
- Projet changé de Suivi des traces à Passerelle
Mis à jour par Nicolas Roche il y a plus de 2 ans
- Fichier 0001-opendatasoft-manage-HTTP-errors-56882.patch 0001-opendatasoft-manage-HTTP-errors-56882.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Le code et un peu différent que d'habitude parce que l'api d'opendatasoft prévoit un message d'erreur mais ne précise rien sur le statut HTTP.
https://help.opendatasoft.com/apis/ods-search-v1/#errors-handling
When an error occurs, a JSON object describing the error is returned by the API.
Dans les faits on se retrouve avec des 4XX qui renseignent ce message et d'autres non :
$ curl -v https://examples.opendatasoft.com/api/records/1.0/search/
< HTTP/2 400 {"error": "Parameter 'dataset' is mandatory."} curl -v https://examples.opendatasoft.com/api/records/1.0/search/bof/ < HTTP/2 404 ...pas du json...
Mis à jour par Benjamin Dauvergne il y a plus de 2 ans
- Statut changé de Solution proposée à Solution validée
Mis à jour par Nicolas Roche il y a plus de 2 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 74895168a8123b994d24825c44dee5909aabf06b Author: Nicolas ROCHE <nroche@entrouvert.com> Date: Mon Sep 13 18:04:18 2021 +0200 opendatasoft: manage HTTP errors (#56882)
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Statut changé de Résolu (à déployer) à Solution déployée
opendatasoft: manage HTTP errors (#56882)