2010-02-05 6 views
0

Nous avons une application iPhone créée par un cabinet externe dans laquelle nous prévoyons d'ajouter des facilités de paiement par carte dans une version ultérieure.Application iPhone pour parler à un service Web, les bases

Nous prévoyons d'héberger un service nous-mêmes afin de traiter les choses de paiement, avec un cryptage SSL. Nous avons des experts internes pour tout cela en dehors de l'iPhone (sous contrat).

Y a-t-il des astuces spécifiques que nous devrions connaître concernant la conception de services Web pour les iPhones?

Nous allons écrire le service Web en C# 3.5.

Répondre

3

Il est préférable de convertir le format de données JSON en objets NSArray ou NSDictionary. C'est plus facile et plus rapide d'être analysé. Donc, spécifiquement pour l'iPhone, il est préférable de consommer des données JSON. Sauf s'il y a une complexité technique que JSON est incapable de gérer.

Vérifiez YAJL:

http://github.com/lloyd/yajl

Il y a wrapper Objective-C/mises en œuvre par gabriel dans github et par MGTwitterEngine.

TouchJSON est un autre code plus simple que yajl. Vous pouvez convertir une chaîne JSON en objet NSDictionary ou NSArray en 2 lignes de code. Mais, peut-être plus lentement.

1

Je ne suis pas sûr qu'il y ait vraiment des considérations spéciales. L'iPhone devrait être capable de communiquer avec la plupart des types de services web.

J'ai travaillé sur une application iPhone qui communiquait avec un service Web RESTful écrit en Java.

J'imagine qu'il est assez simple à tous les niveaux - il y a beaucoup de bibliothèques pour l'analyse/génération de messages au format XML ou JSON, l'iPhone peut gérer l'authentification HTTP, HTTPS, la mise en cache, etc.

Il est juste en bas de votre développeur iPhone pour bien faire :)

1

Pour les services Web SOAP, je vous suggère fortement d'essayer gSOAP. Cette bibliothèque ne prend pas en charge Objective-C, mais elle prend en charge C et C++ et est certainement le projet Open Source le plus complet pour accéder au service Web basé sur SOAP; il surpasse également toutes les autres bibliothèques. Pour Objective-C, vous pouvez essayer wsdl2objc, mais je ne suis pas sûr si elle fournit un support pour SSL/TLS (gSOAP fait). Enfin, les services Web basés sur REST sont facilement gérés en utilisant ASIHTTPRequest.

+1

Si vous pouvez éviter SOAP, alors faites-le. C'est assez terrible du point de vue de la complexité. Si vous le pouvez, préférez une API REST simple avec des réponses JSON. –

+0

Je suis d'accord: SOAP est terrible par rapport à REST. Cependant, SOAP utilisant gSOAP est extrêmement facile, car la bibliothèque cache toute la complexité sous-jacente. –

Questions connexes