Решение заключается в том, чтобы на шаге 4 выдать запрос XHR, а также добавить параметр, который сделает запрос уникальным (новым) для браузера.Например, ?whatever
.
Если только один пользователь влияет на состояние сервера, это один пользователь, тогда JavaScript может отслеживать, когда они влияют на состояние, чтобы начать использовать новый параметр «кеш-буфер».
Если, с другой стороны, состояние сервера может быть кем-либо изменено, тогда ваше единственное (простое) решение - постоянно запрашивать состояние сервера с новым параметром.Использование текущей временной метки для этого (например, ?1568952442135
) обычно работает хорошо.
Это, конечно, не делает то, что вы просили, но решает проблему устаревших данных на клиенте.