2010-01-06 2 views
2

то, что они делают на этом демо, именно то, что я хочу делать.какая техника комет это демо?

http://www.lightstreamer.com/demo/RoundTripDemo/

Интересно, что комета техника, которую они используют.

Это не может быть причиной iframe в Firefox. Я могу открыть две вкладки с той же ссылкой. с iframe u can not сделать это. и он не может быть длинным опросом с ajax, потому что я не видел, чтобы он опросил что-нибудь с помощью firebug.

Кто-то знает ответ? (было бы здорово с некоторой ссылкой на хорошие учебники, которые делают то же самое с той же техникой).

+4

Ваше намерение предоставить внешний доступный URL-адрес для любого, кто сможет узнать, о чем вы говорите. – NotMe

+0

Я получаю «Эта веб-страница недоступна». почему-то ..... – Echo

+0

@Echo: Причина в том, что URL-адрес LocalHost. Таким образом, ссылка пытается направить вас к проекту на вашем компьютере и не удается, поскольку его, очевидно, нет! –

ответ

1

Хотя копаться в сбивающих с толку сценариев не то, мне кажется, сейчас, судя по содержанию страницы DOM он размещает данные из <form> внутри скрытой для отправки данных на сервер и с сервера отправить обратно <script> теги с кодом для передачи данных обратно вызывающему абоненту.

Это довольно тяжелая и навязчивая техника. Это был единственный способ общения на сервере в течение дней до XMLHttpRequest; Обычно я не использовал его сегодня.

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

+0

, поэтому он использует технику потоковой передачи iframe? но разве это не один из надежных методов в настоящее время для кометы? – ajsie

+0

Да. Конечно, как вы можете видеть, он работает ... хотя и с неприглядными побочными эффектами, такими как привязка состояния загрузки браузера ... ». Я не уверен, в чем проблема, с которой вы ссылаетесь, открывая две вкладки по одной и той же ссылке. – bobince

+0

С iframe у вас не может быть двух страниц, открытых в Firefox, в то же время, потому что это просто позволяет одному iFrame в то время. Потому что он думает, что первый iframe (который перезагружается навсегда) не завершил перезагрузку, ожидая, пока он финиш сначала, прежде чем он обновит другую страницу. Я пробовал это и его, как это работает. но с демонстрацией демонов на световых путях он работает с несколькими страницами этой демонстрации. но arent они используют iframe? Тест http://www.zeitoun.net/articles/comet_and_php/start. Просто скачайте метод iframe и попробуйте открыть 2 вкладки в Firefox. второй не будет работать. – ajsie

1

Похоже, несколько методов, разработанных Lightstream, которые включают «ванильную» комету. Краткая выдержка из Lightstreamer white paper:

Каждого клиент Lightstreamer обычно открывает один постоянное соединение с Lightstreamer сервером, на котором обновление нажимных, относящегося к произвольному числу предметов, рам и окон путешествия с помощью методов мультиплексирования ,

Белая бумага и демки очень интересно ...

1

После того, как я разработал module для веб-сервера LightTPD. Модуль реализовал метод Full Duplex Ajax, очень похожий на Comet. В моем blog posts вы найдете все, что вам нужно о FDAjax/Comet, примерах JavaScript, проблемах с брандмауэрами и антивирусными программами и т. Д.

Проект Lighttpd кажется мертвым. Насколько я знаю, есть похожие module для популярного nginx. Однако в будущем мы будем использовать сетевые сокеты.

BTW Я использовал несколько HTTP-адресов (www1.example.com, www2.example.com, ...), чтобы обойти ограничения браузера максимум двух одновременных соединений IP с одним и тем же веб-сервером. www [n] были фактически разрешены к одному и тому же IP-адресу. В случае возможной блокировки браузер автоматически перенаправляется на следующий адрес www [n].

+0

ok хорошо работа вокруг. я попробую это решить проблему max-2-ip. – ajsie