Мені потрібно взаємодіяти з стороннім API. За допомогою цього API я роблю GET-запит у веб-переглядачі кінцевого користувача та отримую відповідь XML. Ці дані мають використовуватися в додатку на базі браузера, де користувач може здійснювати пошук через нього, використовувати його для прийняття рішень тощо. Основна проблема полягає в тому, що більшість браузерів заблокували використання XML між доменами, тому я не можу просто отримати XML від API.
Однак загальні дані в основному розбиті на два набори.
- Перший набір даних є загальнодоступним і його потрібно оновлювати лише так часто, щоб його можна кешувати для всіх користувачів на стороні сервера, значно зменшуючи трафік.
- Другий набір даних є приватним та індивідуальним для кожного користувача. Ці дані також частіше оновлюються в API. Це призводить до кешування набагато менш ефективним.
З міркувань масштабування я хотів би зберегти навантаження сервера якомога менше.
Я бачу два варіанти перед собою:
- Надайте проксі-сервер, який може бути використаний для маршрутизації запитів XML на сторонній сервер та безпосередньо назад та назад між клієнтським та стороннім API.
- Нехай сервер здійснює перетворення з XML в JSON і викреслює непотрібну інформацію. Це по суті означає створення нового API для нашого сервера, який перетворюється на запити від стороннього API
Що було б найкращим способом надання даних користувачеві? (Не обов’язково бути одним із двох варіантів)