Ich muss eine Schnittstelle mit einer API eines Drittanbieters herstellen. Mit dieser API stelle ich eine GET-Anfrage im Browser des Endbenutzers und erhalte eine XML-Antwort. Diese Daten sollen in einer browserbasierten Anwendung verwendet werden, in der der Benutzer sie durchsuchen, Entscheidungen treffen usw. kann. Das Hauptproblem besteht darin, dass die meisten Browser die domänenübergreifende XML-Verwendung gesperrt haben, sodass ich sie nicht einfach abrufen kann das XML von der API.
Die Gesamtdaten sind jedoch grundsätzlich in zwei Sätze unterteilt.
- Der erste Datensatz ist öffentlich und muss nur von Zeit zu Zeit aktualisiert werden, sodass er für alle Benutzer auf der Serverseite zwischengespeichert werden kann, was den Datenverkehr erheblich erleichtert.
- Der zweite Datensatz ist für jeden Benutzer privat und individuell. Diese Daten werden auch in der API häufiger aktualisiert. Dies führt dazu, dass das Caching viel weniger effektiv ist.
Aus Gründen der Skalierbarkeit möchte ich die Serverlast so gering wie möglich halten.
Ich sehe zwei Möglichkeiten vor mir:
- Stellen Sie einen Proxy bereit, mit dem XML-Anforderungen an den Server eines Drittanbieters und direkt zwischen dem Client und der API eines Drittanbieters weitergeleitet werden können.
- Lassen Sie den Server die Konvertierung von XML nach JSON durchführen und unnötige Informationen entfernen. Dies bedeutet im Wesentlichen, dass eine neue API für unseren Server erstellt wird, die sich in Anforderungen der Drittanbieter-API niederschlägt
Was wäre der beste Weg, um die Daten dem Benutzer zur Verfügung zu stellen? (Muss nicht eine der beiden Optionen sein)