нет, то какие либы знаете, чтобы работали на фронте и беке с Sqlite?
На фронте - это в браузере?
да, на реакте
Нужен именно sqlite? Не подойдёт какое-то решение поверх IndexedDB?
sqlite, потому что на беке постгрес+секьюлайз, постгрес - супер важное требование от заказчика
А как фронт и бек тут связаны?
суть в том что надо offline first на фронтенде сделать, бдшка около 100 мб конвертится в sqlite с постгреса и выкачивается на фронтенд. а там уже делают запросы в неё, при чем запросы на кучу джоинов
Это одноразовая операция? Никогда больше к беку приложение не подключается?
постоянно подключается к интернету. это для слабого интернета либо его отсутствия, заранее подгружается бд на фронт, и когда интернет пропадает, приложение работает с текущими выкачанными данными но без write записей, чисто на чтение. то есть синкать изменения которые сделали на фронте за время отсутствия соединения, не нужно (их там по сути и не будет, будет висеть плашка "оффлайн-доступ")
А когда появится соединение - как фронт получает обновления бека?
кнопка "скачать новую версию для оффлайн доступа", скорее всего
И снова качать 100мб?
скорее всего значит, что с заказчиком это не проговаривалось?
И это для условий с проблемным соединением?
да, я так понимаю, надо у менеджеров будет уточнить. там довольно тяжело получить ответы и супер короткие сроки, короче, как обычно
вот потому скорее всего и кнопка. типа, когда соединение хорошее - чел заходит качает базу, плохое - включается оффлайн доступ старой версии
а там общая бд для всех без привязки к юзеру? или он бд выкачивает которая включает и чужие данные?))
Просто хранить в памяти - не вариант? Или приложение постоянно перезапускается?
да, там есть ролевая система, которая ограничивает количество записей, и копия бд фильтруется по ним
хранить в памяти что именно? вот ту бд, которую фронт получит от бека на sqlite, она и будет в памяти, по сути. не уверен как хранилище браузера работает
И нафига база на фронте, чтобы держать их постоянно в синхронизации, и приложение работало даже оффлайн? Если оффлайн работа не нужна, храни в объектах джаваскриптовых и не парься.
Offline First не так делается. Нужно просто при первом запуске сделать запрос и заполнить свою фронтовую базу данных IndexedDB. Без этих всяких пересылок файлов
Ха-ха-ха, жесть.
в реакте / nuxt и тд есть фронт и есть server, ты можешь сделать прокси с фронта и делать в этом server что угодно
Обсуждают сегодня