Dev4Devs
11 subscribers
17 photos
6 files
43 links
Возможно, когда нибудь, этот канал с заметками на IT тематику превратиться в что-то большее, но пока тут только заметки
#dev #csharp #it #tips #development #code #prog #devops #software
Download Telegram
Механизм поддержания актуальной версии клиента в SPA
#frontend #version #client #update

1) Сделать контроллер версии приложения, без авторизации
2) В нем открытый метод, который берет номер версии из конфига appsettings.json (или иного хранилища)
3) Во фронте сделать скрытый компонент, который проверяет каждые N секунд (и при старте страницы) версию на сервере
4) Результат версии писать в cookies и сравнивать с ново-полученным, если версия с сервера больше, то выводить уведомление о том, что версия поменялась, с кнопкой обновляющей страницу и кэш window.location.reload(true);
5) При публикации нового фронта - менять версию в backend с рестартом, или вынести версию в базу данных а на backend грузить ее в MemoryCache с абсолютной экспирацией (например +5 минут)

reload(true) - перезагрузка без кэша