Как StackOverflow узнает, когда появляются новые ответы на вопрос? - PullRequest
11 голосов
/ 30 октября 2008

Если этот вопрос уже задан, я прошу прощения, пожалуйста, укажите мне правильное направление.

Мне было интересно, есть ли у кого-нибудь понимание того, как StackOverflow выскакивает сообщение «n новых ответов опубликовано, загружайте новые ответы» вверху вопроса при добавлении сообщения. Это кажется очень полезной функцией для моего сайта на форуме, и я хотел бы знать, как это делается. Я предполагаю, что какой-то ajax или продвинутый javascript какого-то рода.

Ответы [ 2 ]

12 голосов
/ 30 октября 2008

Посмотрите на это ТАКОЕ сообщение в блоге: http://blog.stackoverflow.com/2008/10/solving-the-fastest-gun-in-the-west-problem/

Тем не менее, один реализуемый рекомендация, которая вышла из этого дискуссия активная, как GMail уведомление, когда вы пишете ответ. Мы согласились с этой функцией запрос, поэтому Джаррод реализовал это. Вот как это работает:

  1. Когда вы начинаете составлять ответ, создается таймер.
  2. Каждую минуту страница проверяет себя, чтобы увидеть, есть ли новые ответы прибыли.
  3. Если приходят новые ответы, в панели уведомлений будет указано, как многие, и предлагают обновить страницу для вы.
  4. Обновления ответов выполняются в стиле AJAX, поэтому они не прерывают ваш текущий ответ.
3 голосов
/ 30 октября 2008

По-видимому, он использует объект таймера jQuery для запроса веб-службы JSON каждые n секунд. Проверить http://docs.jquery.com и http://geekswithblogs.net/JuanDoNeblo/archive/2007/10/24/json_in_aspnetajax_part2.aspx.

Как иронично ... ответ был опубликован, когда я писал это.

...