такая, есть мобильная аппка и админка, когда кто-то что-то меняет в админке, то я отправляю новые данные через вебсокеты на мобильную аппку, отправляю сразу все данные, так как данных не много. Но проблема состоит в том когда юзер только логинится в мобильну. аппку, но еще никаких изминений в админке не было, то и отправлять нечего, а юзеру нужны данные, так как он только что залогинился. Получается, что я как-то должен отправить ему данные при подключении с вебсокет серверу. Как это сделать?
Пока что в голову приходит просто сделать ендпоинт который вернет начальные данные, а уже остальное через вебсокеты
Если он авторизируется, то в бродкаст роутах создай контроллер
А какие ему данные нужны если ни каких изменений не было?
Сам ответи на вопрос
Делать апишку на вебсокетах не комильфо
между запросом к ендпойнту и ответом оттуда клиенту с вебсокета уже прилетают текущие данные, и у тебя проблемы =) в ендпойнт лучше крикнуть: "на такой вебсокет отправь начальное состояние", а клиент пускай получает обычным способом всё через вебсокет. или же вообще на каждый коннект к вебсокету сразу слать начальное состояние. кому не надо, пускай игнорят
>к вебсокету сразу слать начальное состояние. это я и хочу реализовать, вопрос как?)
При установленном соединении отправлять текущее состояние. Честно говоря мне вопрос не понятен
так а где конкретнее это закодить? в каком месте? я просто гуглил и не понятно)
Через что у тебя вебсокеты реализованы?
https://github.com/beyondcode/laravel-websockets
С этим не работал - но по доке там есть https://beyondco.de/docs/laravel-websockets/advanced-usage/custom-websocket-handlers
Обсуждают сегодня