#flutter
#flutter
Вопрос:
У меня есть приложение, написанное на Flutter, и я хочу, чтобы приложение немедленно отображало новые объекты, найденные в базе данных, но лучший способ, который я могу придумать для достижения этой цели, — это отправить запрос GET в серверную базу данных и вызывать «setState ()» каждые 5-10 секунд. Это значит, что когда пользователь находится в своей таблице «Порядок» в телефоне и размещает новый «заказ» со своего ноутбука, я хочу, чтобы этот «объект» отображался в этой таблице пользователей в телефоне без каких-либо переходов по страницам или перезагрузки страницы.
Таблица реализована как ListView.Builder()
Ответ №1:
Если вы также управляете серверной частью, я думаю, одним из способов может быть использование websocket. Когда вставляется заказ, вы вызываете API, который отправляет событие в websocket, ваше приложение Flutter, использующее websocket, может прослушивать это событие и в конечном итоге перестраивать данные. Таким образом, вам не нужно вызывать GET api каждые N секунд, но сервер «вызывает вас». Вот некоторая документация flutter о websockets: https://flutter.dev/docs/cookbook/networking/web-sockets