2009-08-08 16 views
0

Wenn ich eine Anwendung gemacht habe, wie würde ich sie mit einer Datenbank auf einem meiner Server interagieren lassen? Ich bin irgendwie verloren und weiß nicht, wo ich anfangen soll.iPhone Networking

Antwort

0

Ich hatte eine ähnliche Frage bezüglich einer Rails App - die Antworten dort können Ihnen helfen.

What is the best approach for building an iphone client for a rails app?

Aber die Antwort hängt wirklich von Ihrem Wissen über iphone Programmierung und Serverseite Programmierung, plus, wie Sie Ihre Datenbank wird zur Zeit eingerichtet - aber die meisten wahrscheinlich, dass Sie eine Art brauchen werden zu schreiben webservice/REST API, die es einem Remote-Client ermöglicht, Dinge mit Ihrer Datenbank zu tun.

Dafür gibt es viele Frameworks auf der Server-Seite - wenn Sie bei Null beginnen, ist Ruby auf Rails eine gute Wahl.

Auf der iPhone-Seite, werden Sie wahrscheinlich beginnen wollen, indem Sie auf NSURLConnection und verschiedene Anfrage/Antwort-Formate lesen, die Sie damit verwenden können. Ich habe festgestellt, dass der Austausch von Telefongesprächen zwischen Telefon und Server ziemlich einfach ist.

2

Vage Frage ergibt eine vage Antwort.

Es hängt ganz davon ab, welche Art von Interaktion Sie benötigen. Viele konstante Anfragen? Dünn gesät? Clientseitiger Cache? Echtzeit-Updates? Alle diese Fragen werden die Antwort beeinflussen.

Der einfachste Weg ist, mit einem HTTP-basierten AJAX-Client/Server-Interaktionstyp zu gehen. Eine Datenbank hinter einem Web-Server anzubringen, wurde ungefähr ein Bazillion mal durchgeführt, und so finden Sie viele und viele Beispiele und sogar Lösungen mit ein paar Google-Suchen.

Sie müssen nicht wirklich JavaScript (das J in AJAX) verwenden. Senden Sie stattdessen eine HTTP-Anforderung, die Ihre Abfrage kapselt, und lassen Sie den Server mit einem XML-Dokument antworten, das die Antwort enthält.

Wenn das für Sie nicht funktioniert - zu viel Overhead, müssen Sie binäre Informationen (für die XML saugt), etc .. - dann wirst du mit direkter Zugriff auf die Datenbank gehen. Das ist schwieriger und kann von der Portierung einer Client-Bibliothek auf das iPhone bis zur Erstellung eines eigenen Drahtprotokolls reichen.

Ein wesentlich schwierigeres Problem und Sie müssen mit Netzwerkproblemen umgehen - Firewalls, NAT, Proxies, etc ... - die in der Regel bereits mit HTTP gelöst sind.

Bleiben Sie mit HTTP, bis Sie beweisen, dass es nicht funktioniert. Viel einfacher.

Suchen Sie im iPhone-Dokument nach "http request". HTTP-Client-APIs sind enthalten.

+0

Ich denke AJAX wäre die Wahl für mich. Wie würde ich das tun? Ich bin ein Neuling in der Entwicklung, also könnten Sie mich auf ein Tutorial oder etwas verweisen? – Anonymous

Verwandte Themen