HTML5 - Web sql настройка автономного хранилища

Как настроить базовое переключение режимов автономного хранения (автономный / онлайн) в Web SQL? Я знаю, что есть JavaScript

window.navigator.onLine, Я могу проверить режим, а затем пройти процесс...

//All GET/POST performed with AJAX
//On Startup pulldown entire accessible database into offline storage (Doesn't seem secure IMO)
//if(read) pull from offline
//if(create, update, delete and online) pull from standard db, mark changes with offline expiration flag
//if(create, update, delete and offline) perform operation on offline storage, persist with POST when next online (change flag)

Я спрашиваю, есть ли интеграция OOB для этих стандартных задач?

2 ответа

Решение

navigator.online свойство обычно не очень полезно - в браузере рабочего стола все, что он делает, это подключается к меню File -> Work Offline. Это может быть более полезным на iPad, я не знаю, потому что у меня его нет, и я предполагаю, что нет меню Файл, но я бы порекомендовал вам проверить.

Распространенным подходом к этой проблеме является установка двух легко различимых файлов в резервном разделе вашего манифеста. Каждый раз, когда вы хотите подключиться к серверу, попытайтесь получить файл с помощью AJAX и, в обратном вызове, проверьте его, чтобы увидеть, есть ли у вас онлайн-файл или запасной вариант, затем выполните ветвление соответствующим образом.

Вы не должны использовать Web SQL, так как эта спецификация была отменена несколько месяцев назад. Вы должны использовать Localstorage. Если вы специально не программируете что-то вроде iphone, но даже тогда вы не знаете, как долго будет спецификация в WebKit.

Другие вопросы по тегам