Je dois m'interfacer avec une API tierce. Avec cette API, je fais une demande GET depuis le navigateur de l'utilisateur final et je reçois une réponse XML. Ces données doivent être utilisées dans une application basée sur un navigateur où l'utilisateur peut les parcourir, les utiliser pour prendre des décisions, etc. Le problème principal est que la plupart des navigateurs ont verrouillé l'utilisation XML entre domaines, donc je ne peux pas simplement le XML de l'API.
Cependant, les données globales sont fondamentalement divisées en deux ensembles.
- Le premier ensemble de données est public et ne doit être mis à jour que de temps en temps, il peut donc être mis en cache pour tous les utilisateurs côté serveur, ce qui allège considérablement le trafic.
- Le deuxième ensemble de données est privé et individuel pour chaque utilisateur. Ces données sont également mises à jour plus fréquemment dans l'API. Cela rend la mise en cache beaucoup moins efficace.
Pour des raisons d'évolutivité, je voudrais garder la charge du serveur aussi petite que possible.
Je vois deux options devant moi:
- Fournissez un proxy qui peut être utilisé pour acheminer les requêtes XML vers le serveur tiers et directement dans les deux sens entre le client et l'API tierce.
- Demandez au serveur d'effectuer la conversion de XML en JSON et de supprimer les informations inutiles. Cela signifie essentiellement créer une nouvelle API pour notre serveur, ce qui se traduit par des demandes de l'API tierce
Quelle serait la meilleure façon de fournir les données à l'utilisateur? (Ne doit pas nécessairement être l'une des deux options)