Как мое приложение Flex может узнать, когда данные устарели? - PullRequest
0 голосов
/ 03 декабря 2010

У меня есть корпоративное веб-приложение на 100% Flex с бэкэндом Java / BlazeDS.Чтобы создать более быстрый пользовательский интерфейс, я бы хотел загрузить кучу данных в клиент сразу после входа в систему и удерживать его весь сеанс.

Это будет включать такие элементы, как пользовательские настройки, скины приложений, макеты приложений и т. д. Вещи, которые нечасто обновляются на сервере.

Мой вопрос: в случае их обновления, каков хороший подход для обновления данных на стороне клиента ... и знания, когда обновлять?Должен сказать, что меня не интересует Adobe LCDS!

Ответы [ 2 ]

2 голосов
/ 03 декабря 2010

Чтобы обновить данные, кэшированные на клиенте, когда эти данные изменятся на сервере, вам нужно будет использовать программное обеспечение на стороне сервера, которое поддерживает push-запросы сервера и сообщит клиенту, что требуется обновление.

LiveCycle - это одно программное обеспечение на стороне сервера, которое поддерживает это. Я подозреваю, что вы уже знали это, так как вы произносите это в своем вопросе.

GraniteDS - это еще один вариант, и, поскольку он является FOSS, он может вам больше понравиться.

Я подозреваю, что WebORB также поддерживает функцию push, но не удерживайте меня на этом.

Если вы не хотите ничего делать на стороне сервера; Вы можете установить вызов от клиента к серверу на некотором таймере.

0 голосов
/ 03 декабря 2010

По своей природе Flex в значительной степени односторонний, и вы можете получать данные во Flex только с помощью HTTPRequest - вы не можете просто отправить данные клиенту Flex (по крайней мере, без использования Apache).Лучше всего локально хранить временную метку данных о предпочтениях в приложении Flex и использовать httprequest для поиска, если локальная метка времени по-прежнему совпадает с временной меткой данных в вашем серверном приложении через регулярный интервал (т. Е. Каждые пять минут).

...