JSONAPI-Resources / JSONAPI-Resources/jsonapi-resources

RFC: Guide for handling generic filter/fieldset errors, such as empty inputs and 'undefined'

Offen
#1,452 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Ruby
Sterne
2.3k
Forks
546
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

This issue is a (choose one):

  • Feature request.

Checklist before submitting:

  • I've searched for an existing issue.
  • The feature I'm asking for is compliant with the JSON:API spec.

Description

A JavaScript client has sent a request https://example.com/v1/books/1337?fields[books]=id,undefined
There are various possible approaches to raise a 400 on the invalid fieldset field undefined. It seems reasonable for JR to recommend some options.

Similarly, a JavaScript client has sent a request https://example.com/v1/books/1337?filter[published-on]=undefined
There are various possible approaches to raise a 400 on the invalid filter value undefined. It seems reasonable for JR to recommend some options.

Lastly, there are a number of cases where blank filter inputs can be considered invalid, such as https://example.com/v1/books/1337?filter[published-on]=&fields[books]=id. There are various possible approaches to raise a 400 on the invalid filter value '(empty)'. It seems reasonable for JR to recommend some options.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Es werden keine Quelldateien oder Tests genannt; beginne mit der Prüfung der drei Beispielanfragen im Issue und der verlinkten JSON:API-Spezifikation. Vergleiche die möglichen Vorgehensweisen beim Umgang mit undefinierten und leeren Feld- oder Filterwerten und lege anschließend eine abgestimmte Empfehlung dafür fest, wann der Server 400-Antworten zurückgeben sollte.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
javascript, rails, ruby
Bereich
api, backend
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

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