Video: Application Integration - Rest Web Service UI Path tutorials 2024
Teil der iOS Cloud-Entwicklung für Dummies Cheat Sheet
Wenn Sie einen Webdienst verwenden, der in der Cloud basiert, lautet Ihre Antwort möglicherweise in JSON. Wenn Sie bei der Arbeit mit Ihrem cloudbasierten Webdienst in Ihrem Webbrowser
// maps Folgendes eingeben sollten: googleapis. com / maps / api / geocode / json? sensor = true & adresse = EmpireState Building &
Sie würden etwas JSON zurückbekommen - das Folgende, zum Beispiel
Ergebnis {Ergebnisse: [{… Geometrie {{ Grenzen: { Nordosten: { Breite: 40. 7489545, lng: -73. 98483449999999}, Südwesten: { lat: 40. 7479245, lng: -73. 9865073}}, Speicherort: { lat: 40. 7484395, lng: -73. 9856709}, …}
Da JSON genau so kryptisch wie XML ist, müssten Sie dann analysieren, was immer Sie von JSON erhalten.
Das Parsen von JSON unterscheidet sich jedoch sehr von der Analyse von XML. JSON basiert auf zwei Strukturen, mit denen Sie vertraut sind - Arrays und Wörterbücher. Das folgende JSON-Beispiel verwendet beides:
NSError * error = nil; NSDictionary * responseDict = [NSJSONSerialization JSONObjectWithData: DatenOptionen: NSJSONReadingMutableContainers Fehler: & Fehler];
Wenn Sie das JSON-Parsing durchführen, stehen Ihnen nur wenige Optionen zur Verfügung:
-
NSJSONReadingMutableContainers: Die Arrays und Wörterbücher, die Sie zurückerhalten, sind änderbar, sodass Sie sie ändern können. Der Standardwert ist unveränderlich.
-
NSJSONReadingMutableLeaves: Die Zeichenfolgen, die Sie zurückerhalten, sind änderbar, sodass Sie sie ändern können. Der Standardwert ist unveränderlich.
-
NSJSONReadingAllowFragments: Gibt an, dass der Parser Objekte der obersten Ebene zulassen soll, die keine Arrays oder Wörterbücher sind. Der Standard erfordert, dass die JSON-Objekte der obersten Ebene entweder Arrays oder Wörterbücher sind.
Wenn Sie die Klasse NSJSONSerialization verwenden, erhalten Sie (normalerweise, aber nicht notwendigerweise) ein Array oder ein Dictionary zurück, das Strings und Zahlen und sogar andere Arrays und Wörterbücher enthalten kann (denken Sie hier an Eigenschaftenobjekte).
In diesem Fall könnten Sie die Position lat und lng erreichen, indem Sie
ausführen. NSDictionary * result = [results objectAtIndex: 0]; NSDictionary * geometry = [ErgebnisobjektForKey: @ "Geometrie"]; NSDictionary * location = [GeometrieobjektForKey: @ "Speicherort"]; Breitengrad = [StandortwertForKey: @ "lat"]; longitude = [StandortwertForKey: @ "lng"];