ID
ist ein Skalartyp, der in der GraphQL-Spezifikation
beschrieben wird (Arbeitsentwurf Oktober 2016):
Ihre Beobachtung
ist an der Spezifikation zur Ergebniszwang ausgerichtet :
und Eingabezwang :
Wie soll ich mit diesem Wert im Client umgehen?
- Bei der Arbeit mit
ID
Ergebnisse , behandeln Sie sie als Strings. - Bei Verwendung von
ID
Eingaben (in GraphQL-Variablen oder Eingabeparametern für Mutationen oder Abfragen) können Sie entweder Ganzzahlen oder Zeichenfolgen verwenden.
Soll ich es immer in eine ganze Zahl konvertieren, sobald ich es von GraphQL bekomme?
Das hängt stark von Ihrer Anwendung ab. Hier gibt es keine allgemeine Regel, die ein klares „Ja“ oder „Nein“ vorschreibt.
Sollte ich meinen Folgecode ändern, um den ID-Wert als Zeichenfolge zu speichern?
Nein, das ist nicht erforderlich.
Die GraphQL-Spezifikation über die ID
Typ deckt nicht ab, wie Sie speichern die IDs, nur wie ein GraphQL-Server ID
behandeln soll Eingang und Ausgang. Es liegt an der GraphQL-Schicht, dieses Verhalten sicherzustellen. Wie IDs im tatsächlichen Speicher gehandhabt werden, hängt von der Speicherschicht ab.
Gibt es eine korrekte Vorgehensweise bei der Verwendung solcher GraphQL-IDs?
Ich hoffe, die obigen Antworten beantworten auch diese Frage :)