Динамическое обновление части страницы для всех пользователей

StackOverflow https://stackoverflow.com/questions/1281321

  •  16-09-2019
  •  | 
  •  

Вопрос

Я хочу динамически обновлять часть веб-страницы для всех пользователей, когда я захочу (через отдельную страницу).

Сценарий, о котором я думаю:

  1. Допустим, есть окно чата и картинка на странице.
  2. Когда я нажимаю кнопку на другом страница (или то же самое), картинка Изменения во встроенном видео YouTube для всех пользователей на странице чата.

Какой лучший/самый простой способ сделать это?

Это было полезно?

Решение

Вам либо понадобится клиент для опроса (т.е.регулярно делать запросы AJAX к серверу для проверки изменений) или использовать Комета:по сути, это долгоживущий запрос, который поддерживает открытое соединение с сервером, и сервер возвращает либо время ожидания запроса (в этот момент клиент делает еще один запрос), либо происходят изменения.

Обратите внимание: если вы проделаете это с популярным сайтом, вам придется справиться с много одновременных подключений.Подход «один поток на соединение» действительно отстой, если вам нужно иметь десять тысяч соединений одновременно.По сути, вы захотите иметь возможность обслуживать эти запросы асинхронно.То, как вы этого добьетесь, будет зависеть от вашей серверной платформы.

Другие советы

Я бы не стал использовать «Комету».

Почти наверняка не обязательно, чтобы это обновление распространялось сразу на всех людей, просматривающих веб-сайт.

Честно говоря, я бы, вероятно, протащил это обновление, когда вы обновляете любые другие данные, которые они обновляют (скажем, журналы чата).Таким образом, вы просто пометите видео как «следующий» живой элемент для этого сегмента, а код, уже обновляющий чат, изменит это значение, если заметит, что ему нужно новое.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top