Я тестирую офлайн-приложение HTML5. Для этого я останавливаю свой локальный веб-сервер (IIS) и открываю приложение. Он загрузился нормально, но он провалился, как только он запросил API-интерфейс на стороне сервера.
Я хочу предотвратить это и вместо $.get('/api/method') читать данные из моего локального хранилища. Но я могу найти любое средство, чтобы понять, что мое приложение отключено.
if (/* online */) {
// fire ajax
} else {
// ask localstorage
}
Я попытался использовать navigation.onLine
, но, похоже, это всегда верно (по крайней мере, я вижу это в Chrome).
Есть ли у вас какие-либо предложения?
EDIT: с учетом текущих ответов. Приложение ясно понимает, что оно отключено, так как оно берет ресурсы в соответствии с cache.manifest. Мне смешно, что клиенту нужно делать какие-то трюки и пинги. Я предполагаю, что должен быть простой способ проверить текущий режим.