Я работаю над библиотекой JavaScript, которая должна использоваться различными приложениями, ориентированными на различные платформы, такие как Web / iOS / Android.
В этом случае приложению потребуется выполнить REST-вызовы для извлечения и анализа больших многоуровневых данных XML (с пространством имен). Планируете использовать jQuery здесь.
Большой XML-файл может содержать данные, которые иногда могут оказаться бесполезными.
Например, в зависимости от настройки Locale в приложении, которое использует эту библиотеку, необходимо проанализировать только подмножество метаданных.
<meta>
<data>
...
...
...
</data>
<component local="EN-US">
...
</component>
<component local="EN-UK">
...
</component>
<component local="EN-AU">
...
</component>
</meta>
Таким образом, анализ всех данных, полученных в Ajax-ответе, кажется пустой тратой усилий.
Имея это в виду, я задаюсь вопросом, является ли следующее решение хорошим способом решения этой проблемы:
1. Сохраните «responseXML», полученный в успешном обратном вызове Ajax JQuery.
2. Когда приложение запрашивает данные, скажем, «EN-US», анализируйте соответствующие подузлы из сохраненного документа «responseXML» и возвращайте результат.
(Если пользователь изменяет настройку Locale, нет проблем, мы можем пойти и проанализировать соответствующий раздел XML-данных).
Я понимаю, что синтаксический анализ на ходу приведет к задержке приложения, но мне кажется, что общая производительность приложения будет лучше. Нет необходимости анализировать все данные заранее и использовать только их часть.
Пожалуйста, поделитесь своими мыслями / идеями.
РЕДАКТИРОВАТЬ: Сервер контролируется другой командой с разными приоритетами. Таким образом, изменение серверного кода для возврата соответствующих данных на данный момент не вариант.
Заранее спасибо,