@MaxPa

Как привязать javascript функцию на стороне клиента к событию на стороне сервера?

Прошу прощения за расплывчатый вопрос, но в этом и проблема, что не могу его четко сформулировать для поиска в Google или Stackoverflow
Есть желание написать страничку (HTML+JavaScript) которая бы реагировала на события происходящие на сервере. Знаю что есть ReackJS и подобные ему frameworks которые "из коробки" предоставляют подобную функциональность, но хотелось бы найти пример на чистом JavaScript у клиента и PHP на сервере.
Как называется такая технология, какие запросы писать в Google?
Самое простое, что приходит в голову - это циклический процесс на стороне клиента с AJAX запросом к серверу. Но он влечет за собой быстрый расход батарейки на мобильном устройстве и дополнительный (оплачиваемый) трафик в случае мобильного интернета, плюс пустая загрузка сервера.
А может быть "длинный путь" (изучить, установить, применить framework a-la ReackJS) будет короче чем искать/изобретать "простой" велосипед?
Спасибо.
  • Вопрос задан
  • 246 просмотров
Решения вопроса 2
littleguga
@littleguga
Не стыдно не знать, а стыдно не интересоваться.
Скорее всего Вам нужны сокеты. Например, socket.io
Ответ написан
Комментировать
@VanKrock
Сокеты для новых браузеров и long polling для старых. Искать нужно по ключу real time
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
Maxsior
@Maxsior
loading...
Почему все стремятся подключить кучу тяжеловесных фреймворков?
Используйте Server Side Events, они достаточно просты в реализации.
Почитать вот здесь:
learn.javascript.ru/server-sent-events
А вообще, лучше ознакомьтесь со всем разделом:
learn.javascript.ru/ajax
Ответ написан
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
Вам надо обновлять данные? Без события в браузере? По таймеру? Тогда любая технология будет давать одинаковый эффект.
Могу посоветовать PJax - почитайте, но не уверен, что это именно то что надо. Приведите ходя бы пример того что хотите получить? Обновление данных по таймеру или что?
Ответ написан
Комментировать
@MaxPa Автор вопроса
Спасибо. похоже socket.io это то что мне может помочь. Однако в первом же примере там сказано, что нужно установить NodeJS. Похоже без дополнительного framework-а не обойтись.

по поводу уточнений от Максима Тимофеева
Вам надо обновлять данные?на стороне клиента - ДА
Без события в браузере? - ДА
По таймеру? - Вот этого-то как раз и стараюсь избежать.
Приведите ходя бы пример - практически это chat room

пойду почитаю про PJax
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы