Hallo,
ich teste gerade die Rest Komponenten mit JSON. Verschiedene Dienste habe ich schon gut "anzapfen" können.Aber ein Problem bleibt wenn zb. ein knoten oder ein Element nicht vorhanden ist wieder erwarten, schmiert die Anwendung ab.
Wie kann ich das vorhandensein eines Eintrags überprüfen...? das hier soll jetzt mal nur als Beispiel dienen....
Delphi-Quellcode:
Title := MainForecast.GetValue('title').Value;
Publisher := MainForecast.GetValue('publisher').Value;
PublishedDate := MainForecast.GetValue('publishedDate').Value;
Description := MainForecast.GetValue('description').Value;
SeitenAnzahl := MainForecast.GetValue('pageCount').Value;
Sprache := MainForecast.GetValue('language').Value;
Autor := MainForecast.GetValue('authors') as TJSONArray;
Autoren := Autor.Items[0].Value;
ISBNCode := MainForecast.GetValue('industryIdentifiers') as TJSONArray;
Code13:= TJSONObject(ISBNCode.Items[1]).GetValue('identifier').Value;
CodeTyp13 := TJSONObject(ISBNCode.Items[1]).GetValue('type').Value;
Code10:= TJSONObject(ISBNCode.Items[0]).GetValue('identifier').Value;
CodeTyp10 := TJSONObject(ISBNCode.Items[0]).GetValue('type').Value;
Imagelinks := MainForecast.GetValue('imageLinks') as TJSONObject;
BildPfad := ImageLinks.GetValue('thumbnail').Value;
Categories := MainForecast.GetValue('categories') as TJSONArray;
Kategorie := Categories.Items[0].Value;
nur wenn jetzt zb. der Eintrag 'authors' fehlt , bekomme ich eine Fehlermeldung und der Rest wird natürlich auch nicht mehr abgearbeitet.
Meine Frage ist schlicht ....wie kann ich auf nicht vorhandene Knoten/Einträge reagieren..und mit dem nächsten Eintrag fortfahren...
Borstenei