Допустим ли этот вид опроса (Angular данных опроса от Laravel)? - PullRequest
0 голосов
/ 04 мая 2020

У меня есть форум, на котором я хочу отображать уведомления и сообщения, как только пользователь их получает. Я не хочу, чтобы им приходилось обновлять sh на странице, чтобы увидеть, было ли отправлено какое-либо уведомление / сообщение, но я также не очень хочу реализовывать сторонние приложения (например, Pusher), поэтому я подумал, что смогу go с опросом.

Обычно, если пользователь вошел в систему, опрос начинается с Angular. Каждые 10 секунд отправляется запрос к Laravel бэкэнду, спрашивающий, есть ли в MessageTable новая строка, если да, то Laravel возвращает «истинный» ответ, поэтому в angular я отображаю красную точку в профиле пользователя меню.

Когда они переходят в профиль, они получают все сообщения, включая новые. Я не прекращаю там опрос, на случай, если позже они получат больше новых сообщений. Я отписываюсь от опроса, только если пользователь вышел из системы вручную.

Это приемлемо? Должен ли я что-то «очистить» в какой-то момент, чтобы веб-сайт не взломал sh на стороне клиента, или это нормально?

Спасибо за ответ!

1 Ответ

0 голосов
/ 04 мая 2020

Я не думаю, что это подходящее решение. Поскольку постоянный опрос будет использовать ресурсы на резервной основе, вызывая каждые 10 секунд, где 99% времени нет никаких новых данных. Поэтому я рекомендую вам изучить реализацию веб-сокета с помощью laravel и подключиться с помощью angular через веб-сокеты. Посмотрите эту статью для более подробной информации https://medium.com/dailyjs/real-time-apps-with-typescript-integrating-web-sockets-node-angular-e2b57cbd1ec1.

...