Video: PS - Apprendre Photoshop comme un pro en seulement 8 heures, par Thierry Dambermont 2024
Von Neal Goldstein
Wenn Sie über iOS-Cloud-Programmierung sprechen, sprechen Sie über zwei Dinge: iCloud (die von Apple für Sie implementiert wurde und es Ihnen ermöglicht, Synchronisierungsdaten zwischen Geräten) und Webservices (die es Ihnen ermöglichen, die Verarbeitung Ihrer App von einem Remote-Computer irgendwo in der Mitte von jemandem zu erledigen, der weiß wo). Webservices basieren auf effizienten Möglichkeiten, Webservice-Anfragen zu übermitteln - Anfragen, die ein Nutzer an Daten in der Cloud stellt. Die beiden effizientesten Formate (zumindest jetzt) sind XML und JSON. Die Tipps, die Sie hier finden, zeigen Ihnen, wie Sie eine Webanforderung einrichten (am Beispiel des Google Geocoder-Webdiensts) und wie Sie die XML-Antwort und die JSON-Antwort parsen, damit Sie die Webdienstdaten in Ihrer Anwendung verwenden können…
Analysieren von Daten, die von einem Webdienst aus der Cloud zurückgegeben werden
Wenn Sie einen Webdienst verwenden, der in der Cloud basiert, ist Ihre Antwort wahrscheinlich in JSON oder XML, zwei Standardformaten für die Übertragung. Daten zwischen einem Server und einer Webanwendung. Es wird Zeiten geben, in denen du zwischen den beiden Formaten wählen kannst, aber manchmal musst du mit dem gehen, was du bekommst.
Der Google Geocoding-Webdienst bietet Ihnen beispielsweise eine Auswahlmöglichkeit.
Wenn Sie die Antwort im XML-Format wünschen, würden Sie
// maps verwenden. googleapis. com / maps / api / geocode / xml
Wenn Sie die Antwort in JSON wünschen, würden Sie
// maps verwenden. googleapis. com / maps / api / geocode / json? paremters
Die Absicht, Informationen aus XML- und JSON-Datenstrukturen zu erhalten, ist in der Ausführung ziemlich unterschiedlich.
Analysieren einer XML-Antwort aus der Cloud
Wenn Sie einen Webdienst verwenden, der in der Cloud basiert, lautet Ihre Antwort möglicherweise in XML. Wenn Sie bei der Arbeit mit Ihrem cloudbasierten Webdienst in Ihrem Webbrowser
// maps Folgendes eingeben sollten: googleapis. com / maps / api / geocode / xml? sensor = true & adresse = EmpireState Building &
Sie würden etwas XML zurückbekommen - zum Beispiel:
… 40. 7484395 -73. 9856709 …
Da sich XML nicht auf einfach verständliche Weise ausdrückt, müssen Sie analysieren, was XML Ihnen gibt.
Denken Sie daran, dass XML aus Elementen besteht, die Start- und Endtags haben. Um die Informationen über iCloud zu erhalten, verwenden Sie die NSXMLParser-Klasse, die das Delegierungsmuster verwendet. Und so funktioniert das:
NSXMLParser * xmlParser = [[NSXMLParser alloc] initWithData: data]; [xmlParser setDelegate: self]; [xmlParser-Analyse];
Es stellt sich heraus, dass es vier NSXMLParser-Delegat-Methoden gibt, die Sie implementieren werden, um eine XML-Datenstruktur zu parsen: