Socket.IO
Socket.IO — JavaScript-библиотека для веб-приложений и обмена данными в реальном времени. Состоит из двух частей: клиентской, которая запускается в браузере и серверной для node.js. Оба компонента имеют похожее API. Подобно node.js, Socket.IO событийно-ориентированная.
| Socket.IO | |
|---|---|
| Тип | Событийно-ориентированная |
| Автор | Guillermo Rauch |
| Написана на | JavaScript |
| Операционная система | Кроссплатформенное ПО |
| Последняя версия | 4.4.1 (6 января 2022) |
| Состояние | Активный |
| Лицензия | MIT License[1] |
| Сайт | socket.io |
Socket.IO главным образом использует протокол WebSocket, но если нужно, использует другие технологии, например Flash Socket, AJAX Long Polling, AJAX Multipart Stream[2], предоставляя тот же самый интерфейс. Помимо того, что Socket.IO может быть использована как оболочка для WebSocket, она содержит много других функций, включая вещание на несколько сокетов, хранение данных, связанных с каждым клиентом, и асинхронный ввод/вывод.
Обзор
С помощью Socket.IO можно реализовать аналитику в реальном времени, многопользовательские игры, обмен мгновенными сообщениями и совместную работу с документами в реальном времени.
Socket.IO довольно популярен, его используют Microsoft, Yammer, Zendesk, Trello и многие другие организации для создания систем реального времени.
Socket.IO работает на основе событий. Существуют несколько зарезервированных событий для объекта сокета на стороне клиента:
- connect
- connect_timeout
- connect_error
- error
- disconnect
- reconnect
- reconnect_attempt
- reconnecting
- reconnect_error
- reconnect_failed
События для объекта сокета на стороне сервера:
- disconnect
- disconnecting
- error
События для объекта socket.io на стороне сервера:
- connect / connection
Ссылки
- socket.io — официальный сайт Socket.IO
- Проект Socket.IO на сайте GitHub