У меня есть приложение Adobe AIR, которое меня попросили преобразовать в приложение HTML5, предназначенное только для браузера.
Приложение предназначено для оценки изображений отсканированных студенческих работ.Приложение AIR получает конфигурационную информацию о том, что подлежит оценке, а затем вызывает веб-службу, которая возвращает XML-сообщение об отдельных элементах, которые должны быть оценены (сервер обрабатывает такие вещи, как блокирование элементов, поэтому только один человек может оценить его одновременно).Затем приложение ставит в очередь эти входящие элементы и загружает изображения для каждого в фоновом режиме.На переднем плане пользователю предоставляется один или несколько входящих в очередь элементов в форме и вводится оценка для каждого.Когда они отправляют, он берет эти оценки и помещает их в исходящую очередь.Наблюдается исходящая очередь, и любые исходящие сообщения затем отправляются другому процессу веб-службы, который записывает оценку на сервере.Опытные пользователи часто могут оценивать их очень быстро в зависимости от предмета (с частотой один раз в секунду), поэтому мы интенсивно используем кэширование, часто сохраняя десятки или даже сотни элементов локально за раз.
ВГлядя на HTML5 и его варианты для локального хранилища и веб-работников, я подумал, что это возможно.Я провел некоторые исследования, но я не слишком опытен с этими новыми функциями HTML5.Я вижу, что веб-работники изолированы и не могут получить доступ к локальному хранилищу или сессионному хранилищу.Я полагал, что входящие и исходящие очереди могут быть просто массивами, которые я нажимаю и выдвигаю, но теперь это не так ясно.Если мне нужен процесс для постоянного просмотра входящей очереди (чтобы она была заполнена) и исходящей очереди (чтобы она была пустой), казалось, что веб-работники были бы идеальными.Но они не могут обмениваться данными или управлять локальным хранилищем.
Есть какие-нибудь мысли или указатели, чтобы заставить меня двигаться в правильном направлении?У меня был бы довольно жесткий контроль над диктовкой требований браузера, чтобы мы могли использовать самые последние и лучшие версии.Веб-сервис также может быть легко перенастроен для обработки JSON вместо XML.Спасибо.