algolia / algolia/algoliasearch-client-python

runtime error trying to deserialise non json responses

Offen
#480 0 Kommentare 3 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Bug
Vorherrschende Sprache
Python
Sterne
207
Forks
63
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

The Python API client throws a runtime exception while attempting to desialize a non json response. Note that, as described on the JavaScript API Client, we should **NOT** deserialise responses on those cases:

```js
isTimedOut || isNetworkError(response) || (~~(status / 100) !== 2 && ~~(status / 100) !== 4)
```

Source: https://github.com/algolia/algoliasearch-client-javascript/blob/master/packages/transporter/src/concerns/retryDecision.ts#L12.

Solution: Create a pull request that ensures that no `response.json()` is performed on the cases mentioned above.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne bei der Response-Verarbeitung des Python API client und vergleiche sein Verhalten mit der verlinkten JavaScript-Logik in retryDecision.ts. Überprüfe, dass response.json() bei Timeouts, Netzwerkfehlern und Statuscodes, die weder 2xx noch 4xx sind, übersprungen wird; als erledigt gilt die Aufgabe, wenn diese Fälle keine Deserialisierungs-Exception mehr auslösen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
api
Issue-Typ
Bug
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.