2012-03-14 2 views
2

Как сделать асинхронный вызов в приложениях html5. Предположим, что я делаю асинхронный вызов для получения данных с сервера и ожидая ответа. Иногда, если я обновляю браузер, я не смогу поймать данные. Страница b'coz перезагружается со всей переменной redefined.so, как получить эти данные, даже если пользователь обновит браузер или перейдет на другую страницу.Асинхронный вызов в HTML5?

ответ

0

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

Вы МОЖЕТЕ попытаться написать логику, чтобы при каждом обновлении браузера вы проверяли сервер на потерянные вызовы, но это будет довольно сложно.

Большинство пользователей, как правило, знают, что, когда они просматривают страницу, любые существующие запросы будут потеряны.

2

Независимо от того, какие переменные становятся переопределенными, вы можете хранить их во временной сессии. Вы можете хранить данные локально с помощью локального хранилища, хранить его в javascript с помощью куки-файлов или хранить сервер данных на стороне сервера и ссылаться на него с помощью сеанса cookie.

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

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

1

Не существует прямого способа реализовать это. Вы можете попробовать Ajax History, когда вы обновите страницу, будет сделан новый вызов ajax.

или попробуйте http://ajaxpatterns.org/Unique_URLs

Смежные вопросы