Проект HTML5 содержит API по имени EventSource для потоковой передачи данных (уведомления) канавка JavaScript с помощью только одного вызова сервера.
Ища его, я нашел exemple на Opera Labs части JavaScript:
document.getElementsByTagName("event-source")[0]
.addEventListener("server-time", eventHandler, false);
function eventHandler(event)
{
// Alert time sent by the server
alert(event.data);
}
и серверная часть:
Но с сегодняшнего дня, кажется, что только Opera реализовал API, ни Chrome, ни Safari не имеют рабочую версию (Я неправильно здесь?)
Таким образом, мой вопрос, там какой-либо другой путь в JavaScript, возможно, более сложном, для использования этого потока для получения данных?
РЕДАКТИРОВАНИЕ: я смотрю на материал Кометы прямо сейчас, но я не уверен, как снова использовать это :) РЕДАКТИРОВАНИЕ 2: Apparentry, "x-dom-event-stream" был теперь переименован, "текст/поток событий" РЕДАКТИРУЮТ 3: Добрался для понимания пути больше из него с этой недавней статьей от javanet
См. Orbited , который предоставляет библиотеку javascript и сервер. Библиотека javascript пытается использовать WebSockets и возвращается к длительному опросу или другим методам.
Вот хорошее руководство: http://thingsilearned.com/2009/08/03/starting-out-with-comet-orbited-part-3-%E2%80%93-the-client/
Ну, Google действительно мой друг, после долгих поисков я нашел этот скрипт из Ericson Labs (?!)
https: // labs .ericsson.com / apis / eventsource /
На их странице:
Средство активации EventSource позволяет использовать API будущих источников событий в любом текущем веб-браузере. Просто включите библиотеку активаторов на свою страницу , и вы сможете использовать API. Когда пользовательские агенты сами реализуют Event Source API, ваш { Приложение {1}} немедленно и прозрачно начнет использовать собственную реализацию .
Однако для этого решения требуется ключ API от Эрикссон, и его нельзя использовать для коммерческого приложения, что для меня не лучшее решение: (
Итак, если у вас есть лучший подход…
{{1 }}Взгляните на Kaazing Open Gateway . Я считаю, что он работает аналогично ericsson api в том, что он прозрачно переключается на использование нативной реализации, когда она становится доступной. Я думаю, что он предоставляет как источник событий, так и веб-сокеты.