HTML5 / JS — убедитесь, что приложение находится в автономном режиме

Я тестирую автономное HTML5-приложение. Для этого я останавливаю свой локальный веб-сервер (IIS) и открываю приложение. Он загружается нормально, но произошел сбой, как только он запросит метод API на стороне сервера.

Я хочу предотвратить это и вместо $.get('/api/method') читать данные из моего локального хранилища. Но я могу найти любое средство, чтобы понять, что мое приложение находится в автономном режиме.

if (/* online */) {
  // fire ajax
} else {
  // ask localstorage
}

Я пытался использовать navigation.onLine, но это всегда верно (по крайней мере, я вижу это в Chrome).

У вас есть предложения?

РЕДАКТИРОВАТЬ : с учетом текущих ответов. Приложение четко понимает, что оно офлайн, так как берет ресурсы согласно cache.manifest. Мне смешно, что клиенту нужно делать какие-то фокусы и пинги. Я предполагаю, что должен быть простой способ проверить текущий режим.

12
задан Alexander Beletsky 20 March 2012 в 11:58
поделиться