SuperObject kann keine Nullzeichenfolge verarbeiten

Einige JSON-Serializer kehren zurücknull für ein leeres String-Datenfeld, z.B.

{
 "searchtext": null,
 "moretext": "contains something",
 "bookdate": 1377468000000,
 "empid": 12345,
 "listtype": 1
}

Ich benutze SuperObject, um ein ISuperObject zu erstellen:

var
  FJSONRequest: ISuperObject; 
then
  FJSONRequest := SO(Request.Content);   // Webservice request

Dies gibt ein Objekt mit einer Zeichenfolge zurück, die den Text enthält'null'.

Dies liegt offensichtlich daran, dass SuperObject die Anführungszeichen nicht berücksichtigt ("searchtext": a ergibt die gleichen Ergebnisse wie"searchtext": "a").

Hat jemand eine Lösung, bevor ich in die 980-Zeilen-Tokenizer-Routine eintauche?

Ich denke nach dem Motto (entweder / oder):

Lassen Sie das Nulldatenfeld außerhalb des JSON-Objekts

Gib eine leere Zeichenkette zurück

Wenn alles andere fehlschlägt, könnte ich es trotzdem tun

FJSONRequest := SO(StringReplace(Request.Content,': null,',':,',[rfReplaceAll]));  

weil ich nur Anfragen von einer App eines unserer Entwickler bearbeiten muss, aber das ist nicht kinderleicht.
(Nein, er kann das nicht unterdrückennull daEs gibt einen Fehler in der Art und Weise, wie Mono mit seinem Datenvertrag umgeht.)

Übrigens erlebe ich genaudas hier erwähnte Verhalten, aber in einem anderen Teil des SuperObject-Codes, so dass die Problemumgehung nicht funktioniert.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage