Ich habe einen Dienst, der JSON-Eingaben erhält, aber gelegentlich auch ungültige JSON-Inhalte erhält. Ich habe keine Kontrolle über dieses Verhalten. Der Eingang kannWas ist ein guter Weg, um eine gültige oder ungültige JSON in eine Zeichenfolge zu konvertieren?
{"key":{"k1":"v1"},"key2":"value2"}
oder
{"key":{"k1":"v1"},"Random String"}
Meine Idee ist es, diese ganze Sache in eine gültige JSON zu wickeln, wie unten
{"id":"some id", "raw_data":"the above input as string"}
Ich weiß, ich kann alle Zitate entkommen und es behandeln Wie eine Zeichenfolge, aber gibt es eine sauberere Möglichkeit, JSON in eine Escape-Zeichenfolge zu konvertieren?
FWIW, verwende ich Jackson
für Parsing und Verarbeitung.
EDIT: Das JSON-Schema ist nicht im Voraus klar und kann mit verschiedenen Eingaben variieren.
Die Daten in 'raw_data' verwenden kein definiertes Schema. Ich habe die Fragen aktualisiert, um dies zu berücksichtigen. –
@VaishakSuresh Ich verstehe nicht, wie es etwas ändert. Was immer Sie vom Client erhalten - gültig oder ungültig - setzen Sie es als Zeichenfolge in "row_data". Jackson wird den Rest erledigen. –