LINUX.ORG.RU

JavaScript, быстрое сетевое взаимодействие.


0

1

Comet не предлагать, ибо это либа, а хочется разобраться в основах. WebSockets тоже не предлагать, ибо Opera и FireFox решили его выпилить (может уже обратно запилили) по причине какой-то там небезопасности (неважно почему, главное что сволочи выпиливают). Raw Sockets только в chrome экспериментальные есть.

Хочется непрерывным потоком получать события с сервера, частота событий - 20 в секунду, например, небольшие 128-байтные json-куски, например.

XMLHttpRequest как для этого использовать не понимаю. Если послать им запрос, то он установит коннект и отправит HTTP-запрос, по факту ответа на который дёрнет твой асинхронный метод. Всё. Если от сервера прилетит что-то ещё, то это будет послано в топку скорее всего: ответ на запрос-то уже пришёл. А если в ответ слать не валидные HTTP, а какие-то json-куски, то javascript не поймёт юмора.

Чё делать-то?

Чё делать-то?

Выбрасывать web вместе с javascript и другими костылями.

Deleted
()

faye / socket.io / sockjs

Vit ★★★★★
()

WebSockets тоже не предлагать, ибо Opera и FireFox решили его выпилить

Предлагаю выкинуть говно из головы, разобраться в ситуации и заюзать WebSockets.

Hint: никто их ниоткуда не выпиливал.

anonymous
()

Comet не предлагать, ибо это либа

Что?

socket.io

ritsufag ★★★★★
()

У тебя сильно устаревшие сведения по вебсокетам! Отлично они работают, правда, до сих пор никакая зараза не запилила библиотеку для сервера. А самому вломняк!

Eddy_Em ☆☆☆☆☆
()

Хочется непрерывным потоком получать события с сервера, частота событий - 20 в секунду

А в чем сложность-то? Это же обычный, извиняюсь, поллинг, какие еще вебсокеты?

Вот пара ссылок для медитации:

http://www.w3schools.com/js/js_timing.asp

http://api.jquery.com/jQuery.ajax/

anonymous
()
Ответ на: комментарий от yirk

Это на сях? Мне надо C. Всякую дрянь на сервере использовать не хочу.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от anonymous

Обычный поллинг, но не слишком ли частый?

kiverattes ★☆
() автор топика

Использовать ЯП Си или C++. libevent/boost.asio

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.