Gunnar Bittersmann: String in Array konvertieren

Beitrag lesen

@@1unitedpower

Beim Einlesen von JSON-Daten können Strings oder Arrays rauskommen:

[
	{
		"name": "John Doe",
		"telephone": "555 1234"
	},
	{
		"name": "Jane Roe",
		"telephone": ["555 1234", "555 9876"]
	}
]

Das lässt sich einfach korrigieren:

[
	{
		"name": "John Doe",
		"telephone": ["555 1234"]
	},
	{
		"name": "Jane Roe",
		"telephone": ["555 1234", "555 9876"]
	}
]

Nein, das widerspricht Postels Gesetz (Robustheitsgrundsatz).

{"telephone": "555 1234"} ist korrektes JSON. Es gibt keinen Grund, bei einer Telefonnummer eine Liste von Telefonnummern {"telephone": ["555 1234"]} zu notieren.

Die Korrektur hat hier nicht in den Daten zu erfolgen, sondern im auswertenden Programm: “be liberal in what you accept.”

LLAP 🖖

--
„Wer durch Wissen und Erfahrung der Klügere ist, der sollte nicht nachgeben. Und nicht aufgeben.“ —Kurt Weidemann