Как вытащить новый пост и комментарии - PullRequest
1 голос
/ 20 августа 2011

В настоящее время я занимаюсь разработкой веб-сайта, на котором многие пользователи публикуют темы, а комментарии к соответствующим темам отображаются на странице. В настоящее время я занимаюсь разработкой с использованием торта php.

В самый первый раз, когда пользователь нажимает на веб-сайт, отображаются все темы и комментарии. Но когда другие пользователи добавляют новую тему или комментируют тему, мне нужно показать обновление на той же странице. Я запутался, как в том, как я могу получить новое содержимое и соответственно обновить на странице. Например, как это делает Facebook, когда когда ваши друзья добавляют статус или комментируют ваш статус, он обновляется без обновления страницы.

Я знаю, что используется технология AJAX, но как это сделать? Любой источник, на который я могу сослаться? Надеюсь, что кто-то может помочь, поскольку я занимался исследованиями в течение прошлой недели, но ответов пока нет.

1 Ответ

2 голосов
/ 20 августа 2011

Вы можете пойти двумя путями в этом.

Server Push

http://en.wikipedia.org/wiki/Push_technology

Этот метод, возможно, наиболее эффективен, поскольку сервер уведомляет клиента о любых обновлениях.Однако этот метод обычно требует немного больше работы, чем простая система опроса.Вы можете использовать что-то вроде nodejs или Comet для отправки обновлений.Если вы используете nodejs, я настоятельно рекомендую использовать SocketIO для обработки на стороне клиента.Socket.io позволяет клиентской стороне прослушивать сервер на канале, чтобы сервер мог уведомлять клиента о каждом обновлении.

Клиентский сервер опрашивает

В этой версии клиент (браузер новых посетителей) постоянно опрашивает сервер на наличие обновлений.Вы можете установить любой требуемый промежуток, но имейте в виду, что, если вы сделаете промежуток опроса слишком малым, ваш сервер может получить снижение производительности, поскольку каждый новый пользователь будет создавать много запросов.Этот метод так же прост, как установка вызова setInterval() в JS в сочетании с вызовом AJAX.

...