Ich habe eine ColdFusion-Komponente, die einige JSON-Daten zurückgibt:
%Vor%Leider enthält der zurückgegebene JSON alle Eigenschaftsnamen in Großbuchstaben:
%Vor%Gibt es eine Möglichkeit, das Framework zu zwingen, JSON zurückzugeben, so dass die Eigenschaftsnamen alle klein geschrieben sind (vielleicht eine benutzerdefinierte UDF / CFC, die jemand anders geschrieben hat)?
Von Ссылка
Hinweis: ColdFusion stellt intern Strukturschlüsselnamen dar Großbuchstaben und serialisiert daher die Schlüsselnamen JSON-Darstellungen in Großbuchstaben. Jegliches JavaScript, das JSON verarbeitet Darstellungen von ColdFusion-Strukturen müssen nur in Großbuchstaben verwendet werden Struktur Schlüsselnamen wie CITY oder STATE. Sie verwenden auch die Großbuchstaben nennt COLUMNS und DATA als Schlüssel für die beiden Arrays das sind ColdFusion-Abfragen im JSON-Format.
Wenn Sie die Variablen selbst definieren, können Sie Klammernotation verwenden (wie Jason's Antwort zeigt), aber mit eingebauten Sachen wie ORM, glaube ich, dass Sie feststecken - es sei denn, Sie möchten Ihre eigene Struktur erstellen und klonen die ORM-Version manuell, jeden Schlüssel im Gehäuse unten, aber das ist nicht wirklich eine großartige Lösung. : /
Ja, leider funktioniert das nur so, wie ColdFusion funktioniert. Wenn Sie einige Variablen setzen, können Sie Kleinbuchstaben wie bei Strukturen erzwingen:
%Vor%Legt eine Variable mit Großbuchstaben fest. Aber:
%Vor%Erzwingt den Kleinbuchstaben (oder Camelcase abhängig von dem, was Sie übergeben).
Aber mit den ORM-Sachen, die du tust, glaube ich nicht, dass du in der Lage sein wirst, Kontrolle darüber zu haben. Jemand korrigiert mich, wenn ich falsch liege.
Dies sollte wie beschrieben funktionieren.
%Vor%Wenn eine Ihrer Entitätseigenschaften null zurückgibt, ist der Strukturschlüssel nicht vorhanden. Um dieses Problem zu umgehen, versuchen Sie dies
%Vor%Tags und Links json coldfusion coldfusion-9 case-sensitive