Подтвердить что ты не робот

Простой пример кометы с использованием php и jquery

Может ли кто-нибудь дать мне хороший и простой пример техники комет с использованием PHP?

Мне просто нужен пример, который использует постоянное HTTP-соединение или что-то подобное. Я не хочу использовать технику опроса, потому что у меня есть что-то вроде этого, и не только трудно работать и управлять своим большим количеством ресурсов. Также я использую IIS7, а не Apache.

Хороший пример был бы очень полезен, поэтому я мог бы перейти от этой уродливой техники опроса.

4b9b3361

Ответ 1

Вы должны использовать опрос или использовать веб-сервер, который специально разработан для длинных запросов и COMET, с хорошим JS-сервером:

function listen() {
    $.get("/mylongrequestfile", {}, function(data) {
        $("#mydiv").html(data);
        listen(); // then launch again
    }));
};

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

В этом примере, если есть проблема на стороне сервера или просто отключение от пользователя, весь процесс будет нарушен (функция вызывается только в том случае, если запрос успешный)

Ответ 2

Проверьте это: Как реализовать COMET с PHP.
Это не использует JQuery. Он создается с использованием PHP и Prototype. Это очень легко понять. Я думаю, вы можете легко сделать JQuery script после просмотра этого.

Ответ 4

У меня есть очень простой пример, который поможет вам начать с кометы. Он охватывает сбор Nginx с модулем NHPM и включает код для простых ролей издателя/подписчика в jQuery, PHP и Bash.

http://blog.jamieisaacs.com/2010/08/27/comet-with-nginx-and-jquery/

Рабочий пример (простой чат) можно найти здесь:
http://cheetah.jamieisaacs.com/

Ответ 5

Никогда не используя эту технику и не изучая статью Википедии по теме, "Long Polling" кажется единственным жизнеспособным решением. Это звучит довольно просто реализовать бесконечно зацикливанием и спящим script на сервере. Там фактический код в HTTP Streaming page из статьи Википедии.

Вы пробовали все это и наткнулись на конкретные проблемы?

Ответ 6

Проверьте это демо-видео для реализации Long Polling (комета). Это может помочь вам всем

http://www.screenr.com/SNH

Ответ 7

Вы можете взглянуть на этот article, это действительно хорошее начало для понимания концепций программирования комет.

На нем вы найдете два примера. Первый использует метод iframe, тогда как второй использует постоянное соединение.

Ответ 8

Для IIS существует WebSync. Однако, поскольку вы используете PHP, вам может быть лучше с WebSync On-Demand. Любой из них даст вам доступ к серверу, который вы ищете, и прост в использовании. Проверьте этот квесто, а это, в основном, то, что вам нужно.

Здесь простой пример использования WebSync On-Demand в действии без использования языка сценариев. Просто откройте в двух окнах и посмотрите публикацию/подписку в действии.

Чтобы опубликовать с сервера, вы можете использовать PHP api.