Eine Verbindung zum lokalen web-service (läuft unter MAMP) vom iPhone via WIFI.
Ich habe setup eine lokale REST-webservice mit MAMP.
Ich habe setup ein virtueller host " mit der url "http://aem.davidcasillas" zeigt auf meinem öffentlichen Ordner.
MAMP ist das hören auf port 80.
Wenn ich den Zugriff über Safari "http://aem.davidcasillas/webservice/rest/getEventosToday" bekomme ich die korrekte json-Daten.
Jetzt versuche ich den Zugang zu dieser web-service von meine iPhone-Anwendung. Ich führe es aus XCode in das Gerät.
Das Gerät ist angeschlossen an meinem lokalen Netzwerk über WLAN, und die Verbindung funktioniert (ich kann den laden Webseiten in safari)
Ich bin mit RestKit um die Daten herunterzuladen, und ich versuche, es zu erreichen, mit der gleichen url verwende ich in meinem Mac: "http://aem.davidcasillas.es/webservice/rest/getEventosToday".
In das Gerät bekomme ich die Fehlermeldung:
NSURLErrorDomain -1003 Found no server for the specified host name.
Wie soll ich schreiben meine url so kann ich erreichen, das der web-service aus dem iPhone?
HINWEIS: ich habe diesen Beitrag gelesen: test lokale websites mit mamp auf dem iphone? aber keines dieser Probleme anwenden zu meinem Fall. Firewall hab ich deaktiviert und meine config.ini-Datei zeigt die folgende hören, Linie:
Listen 80
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich einen workaround gefunden.
Nutze ich die WIFI-ip-Adresse in SystemPreferences->Netzwerk meinen Mac und dann der ganze Pfad zu der Ressource, also statt:
Ich Schreibe:
Den
192.168.1.6
Teil bringt mich zu meiner lokalen installation root-Ordner/Applications/MAMP/htdocs/
.In den rest der Weg, den ich den ganzen Pfad zu der Ressource. Beachten Sie, dass ich den öffentlichen Ordner in den Pfad. Hoffe, ich könnte meine virtuellen host einrichten, aber haben keinen Weg gefunden.
Wenn ich
hostname
es drucktDiese können Sie ändern in
System Preferences
==>Sharing
==>Computer Name
(Textfeld oben). Beachten Sie, dass in der "computer name" Textfeld, und ich füllte in "ddopson".Wenn Sie auf WiFi sind, sollten Sie in der Lage sein, um die Verbindung mit hostname (ddopson.lokal) von Ihrem iPhone. Das funktioniert, weil beide iOS-und Mac-support Multicast-DNS, wo ein multi-cast UDP-Paket emittiert wird, auf das L2-Netz nachschlagen lokalen Hostnamen. Wenn Ihr Mac hört das multi-cast-Paket, antwortet Sie auf Ihrem iPhone mit seiner ip-Adresse und es kann losgehen.