WebSocket Protocol: āđāļāļēāļ°āļĨāļķāļāđāļāļĩāđāļĒāļ§āļāļąāļāļ§āļīāļāļĩāļāļēāļĢāļāļģāļāļēāļ
āļāđāļāļāļāļāļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ āļāļąāļāļāđāļāļąāļāļāļēāļĢāļāļģāļāļēāļ āđāļĨāļ°āđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāđāļĨāļāđāļŦāđāļāļāļ§āļēāļĄāđāļāđāļāļāļĢāļīāļāļāļāļ WebSocket Protocol āļĢāļąāļāļāđāļāļĄāļđāļĨāđāļāļīāļāļĨāļķāļāđāļāļĩāđāļĒāļ§āļāļąāļāļ§āļīāļāļĩāļāļēāļĢāļāļģāļāļēāļāđāļĨāļ°āļāļļāļāļāļĢāļ°āđāļĒāļāļāđāļāļāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ HTTP āđāļāļāļāļąāđāļāđāļāļīāļĄ

WebSocket Protocol āđāļāđāļāđāļāļĢāđāļāļāļāļĨāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļĩāđāļāļģāļāļ§āļĒāļāļ§āļēāļĄāļŠāļ°āļāļ§āļāđāļāļāļēāļĢāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāđāļāļĄāļđāļĨāđāļāļāļŠāļāļāļāļīāļĻāļāļēāļāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāļĩāļĒāļ§āļāļĩāđāļĄāļĩāļāļēāļĒāļļāļāļēāļĢāđāļāđāļāļēāļāļĒāļēāļ§āļāļēāļ āđāļāļāļāđāļēāļāļāļēāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ HTTP āđāļāļāļāļąāđāļāđāļāļīāļĄ WebSocket āļāđāļ§āļĒāđāļŦāđāļŠāļēāļĄāļēāļĢāļāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļāļđāļĨāļāļđāđāļāļĨāđāļāļāđāđāļāđ āļāļķāđāļāļŦāļĄāļēāļĒāļāļ§āļēāļĄāļ§āđāļēāļāđāļāļĄāļđāļĨāļŠāļēāļĄāļēāļĢāļāđāļŦāļĨāđāļāļāļĢāđāļāļĄ āđ āļāļąāļāđāļāļāļąāđāļāļŠāļāļāļāļīāļĻāļāļēāļ āļāļĢāļąāļāļāļĢāļļāļāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļāļĢāļ·āļāļāđāļēāļĒāđāļĨāļ°āļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļāļāļāđāļāļāļāļĨāļīāđāļāļāļąāļ
āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļĄāļĩāļāļĢāļ°āđāļĒāļāļāđāļāļĒāđāļēāļāļĒāļīāđāļāļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđ āđāļāđāļ āđāļāļĄāļāļāļāđāļĨāļāđ āđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļ āđāļĨāļ°āđāļāļĨāļāļāļāļĢāđāļĄāļāļēāļĢāļāļ·āđāļāļāļēāļĒāļŦāļļāđāļ āļāļķāđāļāļāļģāđāļāđāļāļāđāļāļāļĄāļĩāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļāļĩāđāļĄāļĩāļāļ§āļēāļĄāļŦāļāđāļ§āļāļāđāļģ āđāļāļĢāđāļāļāļāļĨāļāļĩāđāļāđāļ§āļĒāđāļŦāđāļĄāļąāđāļāđāļāđāļāđāļāļķāļāļāļēāļĢāļāđāļēāļĒāđāļāļāļāđāļāļĄāļđāļĨāļāļĩāđāļĢāļ§āļāđāļĢāđāļ§āđāļĨāļ°āļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ āļĨāļāļāđāļēāđāļāđāļāđāļēāļĒāđāļĨāļ°āļāļĢāļąāļāļāļĢāļļāļ āļāļĢāļ°āļŠāļāļāļēāļĢāļāđāļāļđāđāđāļāđ WebSocket āļāļĨāļēāļĒāđāļāđāļāļŠāļīāđāļāļāļĩāđāļāļēāļāđāļĄāđāđāļāđāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļŠāļĢāđāļēāļāđāļ§āđāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļĨāļ°āļāļĢāļīāļāļēāļĢāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļĩāđāļāļąāļāļŠāļĄāļąāļĒ
WebSocket āļāļąāļ HTTP āđāļāļāļāļąāđāļāđāļāļīāļĄ
WebSocket Protocol āđāļĨāļ° HTTP āđāļāļāļāļąāđāļāđāļāļīāļĄāđāļāđāļāļāļąāđāļāđāļāļĢāđāļāļāļāļĨāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļĢāļ·āļāļāđāļēāļĒ āđāļāđāļĢāļāļāļĢāļąāļāļāļĢāļāļĩāļāļēāļĢāđāļāđāļāļēāļāļāļĩāđāđāļāļāļāđāļēāļāļāļąāļāđāļĨāļ°āļĄāļĩāļāļ§āļēāļĄāđāļāļāļāđāļēāļāļāļ·āđāļāļāļēāļāđāļāļāļēāļĢāļāļģāļāļēāļ āļāļĢāļ°āđāļāđāļāļŦāļĨāļąāļāļāļāļāļāļ§āļēāļĄāđāļāļāļāđāļēāļāļĢāļ°āļŦāļ§āđāļēāļ WebSocket āđāļĨāļ° HTTP āļĄāļĩāļāļąāļāļāļĩāđ:
- āļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļāļđāļĨāļāļđāđāļāļĨāđāļāļāđāļāļąāļāļŪāļēāļĨāđāļāļāļđāđāļāļĨāđāļāļāđ: WebSocket āļĢāļāļāļĢāļąāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļāļđāļĨāļāļđāđāļāļĨāđāļāļāđ āļāļģāđāļŦāđāļŠāļēāļĄāļēāļĢāļāļāđāļēāļĒāđāļāļāļāđāļāļĄāļđāļĨāļāļĢāđāļāļĄāļāļąāļāđāļāđāļāļąāđāļāļŠāļāļāļāļīāļĻāļāļēāļ āđāļāļāļēāļāļāļĨāļąāļāļāļąāļ HTTP āđāļāļāđāļāļīāļĄāđāļāđāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļŪāļēāļĨāđāļāļāļđāđāļāļĨāđāļāļāđ āđāļāļĒāļāļĩāđāļāđāļāļĄāļđāļĨāļāļ°āļāļđāļāļŠāđāļāđāļĨāļ°āļĢāļąāļāļŠāļĨāļąāļāļāļąāļ āļāļģāđāļŦāđāđāļāļīāļāđāļ§āļĨāļēāđāļāļāļāļĩāđāļŠāļđāļāļāļķāđāļ
- āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāļāļāļēāļ§āļĢāđāļāļĩāļĒāļāļāļąāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāļāđāļĢāđāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ: āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļĒāļąāļāļāļāđāļāđāļāļēāļāđāļāđāļāļĨāļāļāļāļĢāļ°āļāļ§āļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āđāļāļāļēāļāļāļĢāļāļāļąāļāļāđāļēāļĄ HTTP āđāļāđāļāđāļāļĢāđāļāļāļāļĨāđāļĢāđāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ āļāļķāđāļāļŦāļĄāļēāļĒāļāļ§āļēāļĄāļ§āđāļēāļāļēāļĢāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāļģāļāļ-āļāļēāļĢāļāļāļāļŠāļāļāļāđāļāđāļĨāļ°āļāļĢāļąāđāļāļāļģāđāļāđāļāļāđāļāļāļĄāļĩāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļŦāļĄāđāđāļāļ·āđāļāđāļāļīāļāđāļĨāļ°āļāļīāļ āļŠāđāļāļāļĨāđāļŦāđāļĄāļĩāļāđāļēāđāļāđāļāđāļēāļĒāđāļāļīāđāļĄāļāļķāđāļāđāļĨāļ°āļĨāļāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļĨāļ
- āļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļĨāļ°āđāļ§āļĨāļēāđāļāļ: WebSocket Protocol āļĢāļąāļāļĐāļēāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāļāđāļāļīāļāđāļāļĩāļĒāļ§āļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāđāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āļāļķāđāļāļāđāļ§āļĒāļĨāļāļāđāļēāđāļāđāļāđāļēāļĒāđāļĨāļ°āđāļ§āļĨāļēāđāļāļāļāļāļāđāļāļĢāļ·āļāļāđāļēāļĒ āļāļĒāđāļēāļāđāļĢāļāđāļāļēāļĄ āļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ HTTP āļāļēāļĻāļąāļĒāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļģāļāļāđāļĨāļ°āļāļēāļĢāļāļāļāļŠāļāļāļāļŦāļĨāļēāļĒāļĢāļēāļĒāļāļēāļĢ āļāļķāđāļāļāļ°āđāļāļīāđāļĄāđāļāđāļ§āļāļĢāđāđāļŪāļāđāļĨāļ°āļŠāđāļāļāļĨāđāļŠāļĩāļĒāļāđāļāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļāļēāļĢāļāļģāļāļēāļ
- āļāđāļāļĄāļđāļĨāđāļāļāļēāļĢāļĩāđāļĨāļ°āļāđāļāļāļ§āļēāļĄ: WebSocket āļŠāļēāļĄāļēāļĢāļāļāļąāļāļāļēāļĢāļāđāļāļĄāļđāļĨāđāļāļāļēāļĢāļĩāđāļĨāļ°āļāđāļāļāļ§āļēāļĄāđāļāđ āđāļāļāļāļ°āļāļĩāđ HTTP āđāļāđāļāđāļāļāļāđāļāļāļ§āļēāļĄāđāļāđāļāļŦāļĨāļąāļ āļāļķāđāļāļāļģāļāļąāļāļāļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļāđāļāļāļēāļĢāļāļĢāļ°āļĄāļ§āļĨāļāļĨāļāđāļāļĄāļđāļĨāđāļāļāļēāļĢāļĩāđāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
- āļāļēāļĢāļŠāļāļąāļāļŠāļāļļāļāļāļēāļĢāļŠāļāļĢāļĩāļĄ: WebSocket āļĢāļāļāļĢāļąāļāļāļēāļĢāļŠāļāļĢāļĩāļĄāļāđāļāļĄāļđāļĨ āļāļģāđāļŦāđāļŠāļēāļĄāļēāļĢāļāđāļāđāļāđāļāļĒāđāđāļŦāļĨāļāļāļāļēāļāđāļŦāļāđāļāļāļāđāļāđāļāļāļīāđāļāđāļĨāđāļ āđ āđāļĨāļ°āļŠāđāļāļāļĩāļĨāļ°āļāđāļāļĒ āđāļāļāļēāļāļāļĢāļāļāļąāļāļāđāļēāļĄ HTTP āļāļģāļŦāļāļāđāļŦāđāļŠāđāļāļāđāļāļĄāļđāļĨāļāļąāđāļāļŦāļĄāļāđāļāļāļĢāļēāļ§āđāļāļĩāļĒāļ§ āļŠāđāļāļāļĨāđāļŦāđāļāļēāļĢāđāļāđāļāļĢāļąāļāļĒāļēāļāļĢāđāļĨāļ°āđāļ§āļĨāļēāļāļāļāļŠāļāļāļāđāļāļīāđāļĄāļāļķāđāļ
āļāđāļ§āļĒāļāđāļāļāļĩāđāļŦāļĨāđāļēāļāļĩāđ WebSocket āļāļķāļāļāļĨāļēāļĒāđāļāđāļāđāļāļĢāđāļāļāļāļĨāļāļĩāđāđāļāđāļāļēāļāđāļāđāļāđāļēāļĒāļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļĩāđāļāđāļāļāļāļēāļĢāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāđāļĨāļ°āļāļēāļĢāļāđāļēāļĒāđāļāļāļāđāļāļĄāļđāļĨāļāļĩāđāļĄāļĩāđāļ§āļĨāļēāđāļāļāļāđāļģ āļāđāļ§āļĒāļāļēāļĢāļĢāļąāļāļĐāļēāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāļāļāļēāļ§āļĢ WebSocket āļāđāļ§āļĒāļāļĢāļąāļāļāļĢāļļāļāļāļĢāļ°āļŠāļāļāļēāļĢāļāđāļāļđāđāđāļāđāđāļĨāļ°āļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļāļāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļāđāļ§āđāļāđāļĨāļ°āļĄāļ·āļāļāļ·āļ
WebSocket Protocol āļāļģāļāļēāļāļāļĒāđāļēāļāđāļĢ
WebSocket Protocol āđāļāđāļĢāļąāļāļāļēāļĢāļāļāļāđāļāļāļĄāļēāđāļāļ·āđāļāđāļŦāđāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļĩāđāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāđāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāđāļāļĒāđāļāđāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāļĩāļĒāļ§āļāļĩāđāļĄāļĩāļāļēāļĒāļļāļāļēāļĢāđāļāđāļāļēāļāļĒāļēāļ§āļāļēāļ āđāļāļĒāļāļ·āđāļāļāļēāļāđāļĨāđāļ§ WebSocket āļāļ°āļŠāļĢāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļĒāđāļēāļāļāđāļāđāļāļ·āđāļāļāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āļāļēāļāļāļąāđāļāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāđāļāļĄāļđāļĨāđāļāļŠāđāļ§āļāđāļĨāđāļāđ āļāļĩāđāđāļĢāļĩāļĒāļāļ§āđāļē "āđāļāļĢāļĄ" āļāđāļāđāļāļāļĩāđāļāļ·āļāļĢāļēāļĒāļĨāļ°āđāļāļĩāļĒāļāđāļāļīāđāļĄāđāļāļīāļĄāđāļāļĩāđāļĒāļ§āļāļąāļāļ§āļīāļāļĩāļāļēāļĢāļāļģāļāļēāļāļāļāļ WebSocket Protocol:
- WebSocket Handshake: āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āđāļĢāļīāđāļĄāļāđāļāļāđāļ§āļĒāļāļēāļĢāļāļąāļāļĄāļ·āļāļāļĩāđāđāļĢāļīāđāļĄāļāđāļāđāļāļĒāđāļāļĨāđāļāļāļāđ āļāļēāļĢāļāļąāļāļĄāļ·āļāļāļąāļāļāļĩāđāđāļĢāļīāđāļĄāļāđāļāļāđāļ§āļĒāļāļģāļāļ HTTP āļĄāļēāļāļĢāļāļēāļāļāļĢāđāļāļĄāļŠāđāļ§āļāļŦāļąāļ§ "āļāļąāļāđāļāļĢāļ" āļāļīāđāļĻāļĐ āļāļķāđāļāļāļ°āļŠāđāļāļŠāļąāļāļāļēāļāđāļŦāđāđāļāļīāļĢāđāļāđāļ§āļāļĢāđāđāļāļĨāļĩāđāļĒāļāļāļēāļāđāļāļĢāđāļāļāļāļĨ HTTP āđāļāđāļ WebSocket āļŦāļēāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļĢāļāļāļĢāļąāļ WebSocket āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāļ°āļāļāļāļŠāļāļāļāļāđāļ§āļĒāļāļēāļĢāļāļāļāļŠāļāļāļ "āļāļąāļāđāļāļĢāļ" āļāļĩāđāđāļāļĩāđāļĒāļ§āļāđāļāļ āļāļģāļāļēāļĢāđāļŪāļāļāđāđāļāļāđāļŦāđāđāļŠāļĢāđāļāļŠāļīāđāļ āđāļĨāļ°āļŠāļĢāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket
- WebSocket Frames: āđāļĄāļ·āđāļāļŠāļĢāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļĨāđāļ§ āļāđāļāļĄāļđāļĨāļāļ°āļāļđāļāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāđāļāļĒāđāļāđāđāļāļĢāļĄ WebSocket āđāļāļĢāļĄāļāļĢāļ°āļāļāļāļāđāļ§āļĒāļŠāđāļ§āļāļŦāļąāļ§āļāļĩāđāļĄāļĩāļāđāļāļĄāļđāļĨāļāļēāļĢāļāļ§āļāļāļļāļĄ āļāļēāļĄāļāđāļ§āļĒāđāļāļĒāđāđāļŦāļĨāļ āđāļāļĢāļĄāļŠāļēāļĄāļēāļĢāļāđāļāđāļāđāļāđāļāļąāđāļāđāļāļĢāļĄāļāļ§āļāļāļļāļĄāļŦāļĢāļ·āļāđāļāļĢāļĄāļāđāļāļĄāļđāļĨ āđāļāļĒāđāļāļĢāļĄāļāļ§āļāļāļļāļĄāļāļ°āļāļąāļāļāļēāļĢāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļĨāļ°āđāļāļĢāļĄāļāđāļāļĄāļđāļĨāļāļĩāđāļĄāļĩāļāđāļāļāļ§āļēāļĄāļŦāļĢāļ·āļāļāđāļāļĄāļđāļĨāđāļāļāļēāļĢāļĩ
- āļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ WebSocket: āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļāđāļ§āļĒāđāļŦāđāļŠāļēāļĄāļēāļĢāļāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļŠāļāļāļāļīāļĻāļāļēāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āļŠāļēāļĄāļēāļĢāļāļŠāđāļāđāļĨāļ°āļĢāļąāļāļāđāļāļĄāļđāļĨāđāļāđāļāļĢāđāļāļĄāļāļąāļ āļĨāļāļāļ§āļēāļĄāļŦāļāđāļ§āļāđāļĨāļ°āđāļāļīāđāļĄāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļāļĢāļ·āļāļāđāļēāļĒ āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļĒāļąāļāļāļāđāļāļīāļāļāļĒāļđāđāļāļāļāļ§āđāļēāđāļāļĨāđāļāļāļāđāļŦāļĢāļ·āļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāļ°āļāļīāļāļāļĒāđāļēāļāļāļąāļāđāļāļ āļŦāļĢāļ·āļāļāļāļāļ§āđāļēāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļ°āļāļđāļāļāļąāļāļāļąāļāļŦāļ§āļ°āđāļāļ·āđāļāļāļāļēāļāļāđāļāļāļīāļāļāļĨāļēāļāļāļāļāđāļāļĢāļ·āļāļāđāļēāļĒāļŦāļĢāļ·āļāļāļąāļāļŦāļēāļāļ·āđāļ āđ
WebSocket Protocol āļāđāļ§āļĒāļāļĢāļąāļāļāļĢāļļāļāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļĢāļ·āļāļāđāļēāļĒāđāļāđāļāļĒāđāļēāļāļĄāļēāļ āļāļģāđāļŦāđāđāļāđāļāļāļāļāđāļāļĢāļ°āļāļāļāļŠāļģāļāļąāļāļāļāļāļāļēāļĢāļāļąāļāļāļēāđāļ§āđāļāļŠāļĄāļąāļĒāđāļŦāļĄāđ āļāđāļ§āļĒāļāļēāļĢāļĢāļąāļāļĐāļēāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāļĩāļĒāļ§āļāļĩāđāļāļāļāļĒāļđāđāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāđāļāļĄāļđāļĨ WebSocket āļāļ°āļĨāļāļāđāļēāđāļāđāļāđāļēāļĒ āđāļāļīāđāļĄāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ āđāļĨāļ°āļĄāļāļāļāļĢāļ°āļŠāļāļāļēāļĢāļāđāļāļĩāđāđāļŦāļāļ·āļāļāļ§āđāļēāđāļŦāđāļāļąāļāļāļđāđāđāļāđāļāļĨāļēāļĒāļāļēāļ
WebSocket Handshake: āļāļąāļāđāļāļĢāļāļāļēāļ HTTP
āļāđāļāļāļāļĩāđāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāļ°āļŠāļēāļĄāļēāļĢāļāļŠāļ·āđāļāļŠāļēāļĢāđāļāļĒāđāļāđ WebSocket Protocol āļāļ§āļāđāļāļēāļāļ°āļāđāļāļāļāļģāļāļēāļĢāļāļąāļāļĄāļ·āļ WebSocket āđāļāļ·āđāļāļŠāļĢāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ āļāļēāļĢāļāļąāļāļĄāļ·āļāđāļĢāļīāđāļĄāļāđāļāļāđāļ§āļĒāļāļģāļāļ HTTP āļāļķāđāļāļāļēāļāļāļąāđāļāļāļ°āļāļąāļāđāļāļĢāļāđāļāđāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āđāļāļ·āđāļāđāļŦāđāļŠāļēāļĄāļēāļĢāļāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļŠāļāļāļāļīāļĻāļāļēāļāđāļāđ
āđāļāļĨāđāļāļāļāđāđāļĢāļīāđāļĄāļāđāļāļāļēāļĢāļāļąāļāļĄāļ·āļāļāļąāļāđāļāļĒāļŠāđāļāļāļģāļāļ HTTP GET āđāļāļĒāļąāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āļĢāļ§āļĄāļāļķāļāļŠāđāļ§āļāļŦāļąāļ§ "āļāļąāļāđāļāļĢāļ" āđāļĨāļ° "āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ" āļāļķāđāļāļĢāļ°āļāļļāļāļķāļāļāļ§āļēāļĄāļāļąāđāļāđāļāļāļĩāđāļāļ°āļŠāļĢāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļāļģāļāļāļĒāļąāļāļĄāļĩāļŠāđāļ§āļāļŦāļąāļ§ Sec-WebSocket-Key āļāļķāđāļāđāļāđāļāļāđāļēāļŠāļļāđāļĄāļāļĩāđāđāļāđāļēāļĢāļŦāļąāļŠ base64 āļāļĩāđāļŠāļĢāđāļēāļāđāļāļĒāđāļāļĨāđāļāđāļāļāđ āļāđāļēāļāļĩāđāļāđāļ§āļĒāđāļŦāđāđāļāđāđāļāļ§āđāļēāđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāļąāļāļāļēāļĢāđāļĨāļ°āļāļāļāļŠāļāļāļāļāđāļāļāļģāļāļāđāļŪāļāļāđāđāļāļāđāļāđāļāļĒāđāļēāļāļāļđāļāļāđāļāļ
GET /websocket HTTP/1.1 Host: example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ== Sec-WebSocket-Version: 13 Origin: http://example.com
āđāļĄāļ·āđāļāđāļāđāļĢāļąāļāļāļģāļāļ āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāļ°āļāļĢāļ°āļĄāļ§āļĨāļāļĨāđāļĨāļ°āļāļĢāļ§āļāļŠāļāļāļ§āđāļēāđāļāļĨāđāļāđāļāļāđāđāļāđāļēāļāļąāļāđāļāđāļāļąāļ WebSocket Protocol āļŦāļēāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļĢāļāļāļĢāļąāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāļ°āļāļāļāļŠāļāļāļāļāđāļ§āļĒāļĢāļŦāļąāļŠāļŠāļāļēāļāļ° HTTP 101 Switching Protocols āļāļĢāđāļāļĄāļāđāļ§āļĒāļŠāđāļ§āļāļŦāļąāļ§ "āļāļąāļāđāļāļĢāļ" āđāļĨāļ° "āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ" āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļĒāļąāļāļŠāļĢāđāļēāļāļāđāļē Sec-WebSocket-Accept āļāļĩāđāđāļĄāđāļāđāļģāļāļąāļāđāļāļĒāļāļēāļĢāđāļŪāļ Sec-WebSocket-Key āļāļāļāđāļāļĨāđāļāđāļāļāđāļāđāļ§āļĒ GUID āļāļāļāļĩāđāđāļĨāļ°āļŠāđāļāļāļĨāļąāļāđāļāļāļēāļĢāļāļāļāļāļĨāļąāļ
HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
āđāļĄāļ·āđāļāđāļāļĨāđāļāļāļāđāđāļāđāļĢāļąāļāđāļĨāļ°āļāļĢāļ§āļāļŠāļāļāļāļēāļĢāļāļāļāļŠāļāļāļāļāļāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļāļ°āļāļđāļāļŠāļĢāđāļēāļāļāļķāđāļ āđāļāļīāļāđāļāđāļāļēāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļŠāļāļāļāļīāļĻāļāļēāļāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ
WebSocket Frames: āļāļēāļĢāļāļąāļāđāļāļĢāļāļŠāļĢāđāļēāļāļāđāļāļĄāļđāļĨ
āļŦāļĨāļąāļāļāļēāļāļŠāļĢāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āđāļĨāđāļ§ āļāđāļāļĄāļđāļĨāļāļ°āļāļđāļāđāļĨāļāđāļāļĨāļĩāđāļĒāļāđāļāđāļāđāļāļĢāļĄ WebSocket āđāļāļĢāļĄāđāļŦāļĨāđāļēāļāļĩāđāļāļĢāļ°āļāļāļāļāđāļ§āļĒāļāđāļāļĄāļđāļĨāļāļēāļĢāļāļ§āļāļāļļāļĄāđāļĨāļ°āļāđāļāļĄāļđāļĨāļāļĩāđāļāļģāđāļāđāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ WebSocket WebSocket Protocol āļāļģāļŦāļāļāļāļĢāļ°āđāļ āļāđāļāļĢāļĄāļāđāļēāļāđ āļĢāļ§āļĄāļāļķāļāļāđāļāļāļ§āļēāļĄ āđāļāļāļēāļĢāļĩ āđāļĨāļ°āđāļāļĢāļĄāļāļ§āļāļāļļāļĄ āļāļķāđāļāđāļāđāļĨāļ°āļāļĢāļ°āđāļ āļāļĄāļĩāļāļļāļāļāļĢāļ°āļŠāļāļāđāđāļāļāļēāļ°
āđāļāļĢāļĄāļāđāļāļāļ§āļēāļĄāđāļĨāļ°āđāļāļāļēāļĢāļĩāļŠāđāļāļāđāļāļĄāļđāļĨāđāļāļāļāļĨāļīāđāļāļāļąāļāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āļāļĢāļāļāļāđāļāļāļ§āļēāļĄāļĄāļĩāļāđāļāļāļ§āļēāļĄāļāļĩāđāđāļāđāļēāļĢāļŦāļąāļŠ UTF-8 āđāļāļāļāļ°āļāļĩāđāđāļāļĢāļĄāđāļāļāļēāļĢāļĩāđāļĄāļĩāļāđāļāļĄāļđāļĨāđāļāļāļēāļĢāļĩāđāļāļĩāđāļāļģāļŦāļāļāđāļāļ āđāļāļĢāļĄāļāļ§āļāļāļļāļĄāđāļāđāđāļāļ·āđāļāļāļąāļāļāļēāļĢāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ āđāļĨāļ°āļĢāļ§āļĄāļāļķāļāļāļĢāļ°āđāļ āļāļāđāļēāļāđ āđāļāđāļ āļāļīāļ āļāļīāļāļāļāļ āđāļĨāļ°āđāļāļĢāļĄāļāļīāļ āļĄāļĩāļāļēāļĢāđāļāđāđāļāļĢāļĄāļāļīāļāđāļĨāļ°āļāļāļāđāļāļ·āđāļāļāļĢāļ§āļāļŠāļāļāļāļ§āļēāļĄāļŠāļĄāļāļđāļĢāļāđāļāļāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ āđāļāļāļāļ°āļāļĩāđāđāļāļĢāļĄāļāļīāļāļāļ°āđāļĢāļīāđāļĄāļāđāļāļāļēāļĢāļāļīāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ
āđāļāļĢāļĄāļāļāļ WebSocket āļāļĢāļ°āļāļāļāļāđāļ§āļĒāļŦāļĨāļēāļĒāļŠāđāļ§āļ:
- FIN Bit: āļāļīāļāđāļāļĩāļĒāļ§āļāļĩāđāļĢāļ°āļāļļāđāļāļĢāļĄāļŠāļļāļāļāđāļēāļĒāđāļāļāđāļāļāļ§āļēāļĄ
- Opcode: āļāđāļē 4 āļāļīāļāļāļĩāđāļāļāļīāļāļēāļĒāļāļĢāļ°āđāļ āļāļāļāļāđāļāļĢāļĄ (āđāļāđāļ āļāđāļāļāļ§āļēāļĄ āđāļāļāļēāļĢāļĩāđ āļŦāļĢāļ·āļāļāļēāļĢāļāļ§āļāļāļļāļĄ)
- Mask Bit: āļāļīāļāđāļāļĩāļĒāļ§āļāļĩāđāļĢāļ°āļāļļāļ§āđāļēāļāđāļāļĄāļđāļĨāđāļāļĒāđāđāļŦāļĨāļāļāļđāļāļĄāļēāļŠāļāđāļŦāļĢāļ·āļāđāļĄāđ
- āļāļ§āļēāļĄāļĒāļēāļ§āļāļāļāđāļāļĒāđāđāļŦāļĨāļ: āļāđāļē 7 āļāļīāļ, 16 āļāļīāļ āļŦāļĢāļ·āļ 64 āļāļīāļāļāļĩāđāđāļŠāļāļāļāļķāļāļāļ§āļēāļĄāļĒāļēāļ§āļāļāļāļāđāļāļĄāļđāļĨāđāļāļĒāđāđāļŦāļĨāļ
- Masking Key: āļāđāļē 32 āļāļīāļāļāļĩāđāđāļāđāđāļāļāļēāļĢāđāļāļīāļāđāļāļāļāđāļāļĄāļđāļĨāđāļāļĒāđāđāļŦāļĨāļ (āļŦāļēāļāļĄāļēāļŠāļāđ)
- āļāđāļāļĄāļđāļĨāđāļāļĒāđāđāļŦāļĨāļ: āļāđāļāļĄāļđāļĨāļāļĩāđāđāļāļĢāļĄāļŠāđāļāļĄāļē
āđāļāļĢāđāļāļāļāļĨāļāđāļ§āļĒāđāļŦāđāļĄāļąāđāļāđāļāđāļāđāļāļķāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļāļĩāđāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāđāļĨāļ°āđāļāļ·āđāļāļāļ·āļāđāļāđāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāđāļāļĒāļāļēāļĢāļāļąāļāđāļāļĢāļāļŠāļĢāđāļēāļāļāđāļāļĄāļđāļĨāđāļāđāļāļĢāļĄ WebSocket
WebSocket Subprotocols: āļāļēāļĢāļāļĒāļēāļĒāđāļāļĢāđāļāļāļāļĨāļāļēāļ
āđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒ WebSocket āđāļāđāļāđāļāļĢāđāļāļāļāļĨāđāļāļāļēāļ°āđāļāļāļāļĨāļīāđāļāļāļąāļāļāļĩāđāļŠāļĢāđāļēāļāļāļķāđāļāļāļēāļ WebSocket Protocol āļāļ·āđāļāļāļēāļ āđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒāđāļŦāļĨāđāļēāļāļĩāđāļāđāļ§āļĒāđāļŦāđāļāļąāļāļāļąāļāļāļēāļŠāļēāļĄāļēāļĢāļāļāļģāļŦāļāļāļāļāđāļĨāļ°āđāļāļāđāļāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļāļģāļŦāļāļāđāļāļāļŠāļģāļŦāļĢāļąāļāļāļĢāļāļĩāļāļēāļĢāđāļāđāļāļēāļāđāļāļāļēāļ° āļāļķāđāļāļāļĒāļēāļĒāļāļĩāļāļāļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļāļāļāļ WebSocket āđāļŦāđāļāļĩāļĒāļīāđāļāļāļķāđāļ āđāļāļŠāļāļēāļāļāļēāļĢāļāđāļāļĩāđāđāļāļĢāđāļāļāļāļĨāļāļ·āđāļāļāļēāļāđāļĄāđāļĄāļĩāļāļąāļāļāđāļāļąāļāļāļēāļĢāļāļģāļāļēāļāļāļĩāđāđāļāļĩāļĒāļāļāļ āđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒāļāļ°āđāļāđāļēāļĄāļēāļĄāļĩāļāļāļāļēāļāđāļāļ·āđāļāđāļāļīāđāļĄāļāļļāļāļāđāļēāđāļŦāđāļāļąāļāļāļĢāļ°āļāļ§āļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ
āđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒāļāļđāļāļāļģāļŦāļāļāđāļāļĒāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāđāļāļĢāļ°āļŦāļ§āđāļēāļāļāļĢāļ°āļāļ§āļāļāļēāļĢāļāļąāļāļĄāļ·āļ WebSocket āđāļāļĨāđāļāļāļāđāļĢāļ§āļĄāļŠāđāļ§āļāļŦāļąāļ§ Sec-WebSocket-Protocol āđāļāļāļģāļāļāļāļąāļāļĄāļ·āļāđāļĢāļīāđāļĄāļāđāļ āđāļāļĒāļĢāļ°āļāļļāđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒāļāļĩāđāļĢāļāļāļĢāļąāļāļāļĒāđāļēāļāļāđāļāļĒāļŦāļāļķāđāļāļĢāļēāļĒāļāļēāļĢ āļāļąāļ§āļāļĒāđāļēāļāđāļāđāļ:
GET /websocket HTTP/1.1 Host: example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: x3JJHMbDL1EzLkh9GBhXDw== Sec-WebSocket-Version: 13 Sec-WebSocket-Protocol: subprotocol1, subprotocol2 Origin: http://example.com
āđāļĄāļ·āđāļāđāļāđāļĢāļąāļāļāļēāļĢāļĢāđāļāļāļāļ āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāļ°āļāļĢāļ§āļāļŠāļāļāđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒāļāļĩāđāđāļŠāļāļ āđāļĨāļ°āđāļĨāļ·āļāļāļŦāļāļķāđāļāđāļāļĢāđāļāļāļāļĨāļāļĩāđāļŠāļāļąāļāļŠāļāļļāļ āļāļēāļāļāļąāđāļāļāļ°āļĢāļ§āļĄāđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒāļāļĩāđāđāļĨāļ·āļāļāđāļ§āđāđāļāļŠāđāļ§āļāļŦāļąāļ§ Sec-WebSocket-Protocol āđāļāļāļēāļĢāļāļāļāļāļĨāļąāļāļāļēāļĢāļāļąāļāļĄāļ·āļāļāļąāļ:
HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-WebSocket-Accept: HSmrc0sMlYUkAGmm5OPpG2HaGWk= Sec-WebSocket-Protocol: subprotocol1
āđāļĄāļ·āđāļāļāļēāļĢāļāļąāļāļĄāļ·āļāļāļąāļāđāļŠāļĢāđāļāļŠāļīāđāļ āđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāļ°āļŠāļ·āđāļāļŠāļēāļĢāļāļąāļāđāļāļĒāđāļāđāđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒāļāļĩāđāđāļĨāļ·āļāļ āđāļāļĒāļāļāļīāļāļąāļāļīāļāļēāļĄāļāļāđāļĨāļ°āđāļāļāđāļāļ
āđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒ WebSocket āļŠāļēāļĄāļēāļĢāļāļāļģāļŦāļāļāļĄāļēāļāļĢāļāļēāļāļŦāļĢāļ·āļāļāļāļāđāļāļāđāļāļāđāļāđ āđāļĨāļ°āļāļēāļĢāđāļāđāļāļēāļāļāļ°āļāļķāđāļāļāļĒāļđāđāļāļąāļāļāļ§āļēāļĄāļāđāļāļāļāļēāļĢāđāļāļāļēāļ°āļāļāļāđāļāļāļāļĨāļīāđāļāļāļąāļ āļāļąāļ§āļāļĒāđāļēāļāļāļāļāđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒāļāļĩāđāđāļāđāļāļĄāļēāļāļĢāļāļēāļ āđāļāđāđāļāđ MQTT āļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļāļļāļāļāļĢāļāđ IoT āđāļĨāļ° XMPP āļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļēāļĢāļĢāļąāļāļŠāđāļāļāđāļāļāļ§āļēāļĄ
WebSocket API: āļāļēāļĢāđāļāđāļāļēāļāđāļāļĢāļēāļ§āđāđāļāļāļĢāđāđāļĨāļ°āļāļĢāļāļĩāļāļēāļĢāđāļāđāļāļēāļ
WebSocket API āđāļāđāļāļāļēāļĢāđāļāđāļāļēāļ JavaScript āļāļāļ WebSocket Protocol āļŠāļģāļŦāļĢāļąāļāđāļ§āđāļāđāļāļĢāļēāļ§āđāđāļāļāļĢāđ āđāļāļĒāļĄāļĩāļāļīāļāđāļāļāļĢāđāđāļāļāļŠāļģāļŦāļĢāļąāļāļāļąāļāļāļąāļāļāļēāđāļāļ·āđāļāļŠāļĢāđāļēāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļŠāļāļāļāļīāļĻāļāļēāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđ (āđāļāļāļāļĨāļīāđāļāļāļąāļāđāļ§āđāļ) āđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket
āđāļāļāļēāļĢāļŠāļĢāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļāļąāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āļāđāļāļĄāļđāļĨāđāļāđāļāļāđāļāđāļāļāļĩāđāļŠāļēāļāļīāļāļ§āļīāļāļĩāļāļēāļĢāļŠāļĢāđāļēāļāļāļīāļāļŠāđāļāļāļāđ WebSocket āđāļāļĒāđāļāđ JavaScript: ```javascript const socket = new WebSocket('ws://example.com'); ``` āđāļāđāļāļāđāļēāļāļāļāļŠāļĢāđāļēāļāļāļīāļāļŠāđāļāļāļāđ WebSocket āđāļŦāļĄāđ āđāļāļĒāļĢāļ°āļāļļ URL WebSocket āļāļāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđāđāļāļĒāđāļāđāļĢāļđāļāđāļāļ 'ws' (āđāļĄāđāļāļĨāļāļāļ āļąāļĒ) āļŦāļĢāļ·āļ 'wss' (āļāļĨāļāļāļ āļąāļĒ) āđāļĄāļ·āđāļāļŠāļĢāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļĨāđāļ§ āđāļŦāļāļļāļāļēāļĢāļāđāļāđāļēāļāđ āđāļāđāļ open message error āđāļĨāļ° close āļŠāļēāļĄāļēāļĢāļāđāļāđāđāļāļ·āđāļāļāļąāļāļāļēāļĢāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ
āļāļĩāđāļāļ·āļāļāļąāļ§āļāļĒāđāļēāļāļāļēāļĢāđāļāđāļāļąāļ§āļāļąāļāļāļēāļĢāđāļŦāļāļļāļāļēāļĢāļāđāļāļąāļ WebSocket API: ```javascript // Connection opens socket.addEventListener('open', (event) => { socket.send('Hello Server!'); }); // āļāļąāļāļāđāļāļāļ§āļēāļĄ socket.addEventListener('message', (event) => { console.log('Message from server: ', event.data); }); // āļāļąāļāļāļēāļĢāļāđāļāļāļīāļāļāļĨāļēāļ socket.addEventListener('error', (event) => { console.error('WebSocket error:', event); }); // āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļīāļ socket.addEventListener('āļāļīāļ', (āđāļŦāļāļļāļāļēāļĢāļāđ) => { console.log('āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļāļīāļ:', āđāļŦāļāļļāļāļēāļĢāļāđ); }); ``` WebSocket API āđāļāđāđāļāđāļ§āđāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāđāļēāļāđ āļĢāļ§āļĄāļāļķāļ:
- āđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļ: āļāļđāđāđāļāđāļŠāļēāļĄāļēāļĢāļāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāđāļāļāļ§āļēāļĄāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļąāļāļāļđāđāđāļāđāļĢāļēāļĒāļāļ·āđāļāđāļāļĒāđāļĄāđāļāđāļāļāđāļāļĨāļāđāļāļĒāļāļĢāļąāđāļāļŦāļĢāļ·āļāļĢāļĩāđāļāļĢāļāļāđāļ§āļĒāļāļāđāļāļ
- āļāļēāļĢāđāļāđāļāđāļāļ·āļāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđ: āļĢāļąāļāļāļēāļĢāļāļąāļāđāļāļāļāļąāļāļāļĩāļāļēāļāļāļĢāļīāļāļēāļĢāļŦāļĢāļ·āļāļāļļāļāļāļĢāļāđāļŠāļģāļŦāļĢāļąāļāļāļīāļāļāļĢāļĢāļĄāļāđāļēāļāđ āđāļāđāļ āļāļēāļĢāđāļāđāļāđāļāļ·āļāļāļāļēāļāļāļĩāđāļĄāļĨ āļāļēāļĢāļāļąāļāđāļāļāļāļēāļ āļŦāļĢāļ·āļāļāļēāļĢāļāļģāļāļēāļāļĢāđāļ§āļĄāļāļąāļāđāļāļāļŦāļĨāļēāļĒāļāļđāđāđāļāđ
- āđāļāļĢāļ·āđāļāļāļĄāļ·āļāļāļēāļĢāļāļģāļāļēāļāļĢāđāļ§āļĄāļāļąāļāđāļāļāļŠāļ: āđāļāđāđāļāđāļāļāļŠāļēāļĢ āļŠāđāļāļĢāļāļāļĩāļ āļŦāļĢāļ·āļāļāļēāļĢāļāļģāđāļŠāļāļāļāļĢāđāļāļĄāļāļąāļāļāļąāļāļāļđāđāđāļāđāļŦāļĨāļēāļĒāļāļ āļāļģāđāļŦāđāļŠāļēāļĄāļēāļĢāļāļāļģāļāļēāļāļĢāđāļ§āļĄāļāļąāļāđāļĨāļ°āļāļ§āļāļāļļāļĄāđāļ§āļāļĢāđāļāļąāļāđāļāđāļāļĒāđāļēāļāļĢāļēāļāļĢāļ·āđāļ

āļāđāļāļāļ§āļĢāļāļīāļāļēāļĢāļāļēāļāđāļēāļāļāļ§āļēāļĄāļāļĨāļāļāļ āļąāļĒāđāļĨāļ°āđāļāļ§āļāļāļīāļāļąāļāļīāļāļĩāđāļāļĩāļāļĩāđāļŠāļļāļ
āļāļēāļĢāļĢāļąāļāļĢāļāļāļāļ§āļēāļĄāļāļĨāļāļāļ āļąāļĒāļāļāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļāļ·āļāđāļāđāļāļŠāļīāđāļāļŠāļģāļāļąāļāđāļāļāļēāļĢāļāļāļāđāļāļāļāđāļāļĄāļđāļĨāđāļĨāļ°āļĢāļąāļāļĐāļēāļāļ§āļēāļĄāļŠāļĄāļāļđāļĢāļāđāļāļāļāđāļāļāļāļĨāļīāđāļāļāļąāļ āļāđāļēāļāļĨāđāļēāļāļāļĩāđāļāļ·āļāļāđāļāļāļ§āļĢāļāļīāļāļēāļĢāļāļēāļāđāļēāļāļāļ§āļēāļĄāļāļĨāļāļāļ āļąāļĒāļāļĩāđāļŠāļģāļāļąāļāđāļĨāļ°āđāļāļ§āļāļāļīāļāļąāļāļīāļāļĩāđāļāļĩāļāļĩāđāļŠāļļāļāļāļĩāđāļāļ§āļĢāļāļāļīāļāļąāļāļīāļāļēāļĄāđāļĄāļ·āđāļāđāļāđāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ WebSocket:
- āļāđāļĒāļāļēāļĒāļāļĩāđāļĄāļĩāļāđāļāļāļģāđāļāļīāļāđāļāļĩāļĒāļ§āļāļąāļ: āđāļāđāļāđāļĒāļāļēāļĒāļāļĩāđāļĄāļĩāļāđāļāļāļģāđāļāļīāļāđāļāļĩāļĒāļ§āļāļąāļāđāļāļ·āđāļāļāļģāļāļąāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āđāļāļĒāļąāļāđāļāđāļĄāļāđāļāļĩāļĒāļ§āļāļąāļāļāļąāļāđāļ§āđāļāđāļāļāļāļĨāļīāđāļāļāļąāļ āļāđāļĒāļāļēāļĒāļāļĩāđāļāđāļ§āļĒāļāđāļāļāļāļąāļāļāļēāļĢāđāļāļĄāļāļĩāļāđāļ§āļĒāļāļēāļĢāļāļĨāļāļĄāđāļāļĨāļāļāļģāļāļāļāđāļēāļĄāđāļāļāđ (CSRF)
- āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļāļĩāđāļāļĨāļāļāļ āļąāļĒ (WSS): āđāļāđāļĢāļđāļāđāļāļ URL 'wss' āđāļāļ·āđāļāđāļŦāđāđāļāđāđāļāļ§āđāļēāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļāļĨāļāļāļ āļąāļĒ āđāļāļĢāđāļāļāļāļĨāļāļĩāđāļāļ°āđāļāđāļēāļĢāļŦāļąāļŠāļāđāļāļĄāļđāļĨāļāļĩāđāļŠāđāļāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāđāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāđāļāļĒāđāļāđ Transport Layer Security (TLS) āļāļķāđāļāļāđāļāļāļāļąāļāļāļēāļĢāļāļąāļāļāļąāļāļŦāļĢāļ·āļāļāļēāļĢāđāļāļĄāļāļĩāđāļāļāđāļāļĢāļāļāļĨāļēāļ
- āļāļĢāļ§āļāļŠāļāļāļāļīāļāļāļļāļāļāļāļāļāļđāđāđāļāđ: āļāļĢāļ§āļāļŠāļāļāđāļĨāļ°āļāļĢāļ§āļāļŠāļāļāļāļīāļāļāļļāļāļāļāļāļāļđāđāđāļāđāļāļāļāļąāđāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđāđāļŠāļĄāļāđāļāļ·āđāļāđāļŦāđāđāļāđāđāļāļ§āđāļēāļĄāļĩāļĢāļđāļāđāļāļāļāļĩāđāļāļĩ āļāļĨāļāļāļ āļąāļĒ āđāļĨāļ°āđāļāđāļāđāļāļāļēāļĄāļĢāļđāļāđāļāļāļāļĩāđāļāļēāļāļŦāļ§āļąāļ āļŦāļĨāļĩāļāđāļĨāļĩāđāļĒāļāļāļēāļĢāļāļģāđāļāļīāļāļāļēāļĢāļāļīāļāļāļļāļāļāļāļāļāļđāđāđāļāđāđāļāļĒāļāļĢāļ āđāļĨāļ°āđāļāđāļāļēāļĢāļāđāļēāđāļāļ·āđāļāļāļīāļāļāļļāļāđāļāļ·āđāļāļāđāļāļāļāļąāļāļāļēāļĢāđāļāļĄāļāļĩ āđāļāđāļ Cross-Site Scripting (XSS) āļŦāļĢāļ·āļāļāļēāļĢāđāļāļĢāļ SQL
- āļāļąāļāļāļēāļĢāļāļąāļāļāļēāļĢāļāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļĩāđāđāļĄāđāļāļēāļāļāļīāļ: āđāļāđāļāļĨāđāļāļāļēāļĢāļāļąāļāļāļēāļĢāļāđāļāļāļīāļāļāļĨāļēāļāđāļāļ·āđāļāļāļđāđāļāļ·āļāļāļēāļāļāļēāļĢāļāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļĩāđāđāļĄāđāļāļēāļāļāļīāļāļŦāļĢāļ·āļāļāļ§āļēāļĄāļĨāđāļĄāđāļŦāļĨāļ§āļāļāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āđāļāļĢāļāļāļīāļāļēāļĢāļāļēāđāļāđāļāļĨāļĒāļļāļāļāđāļāļēāļĢāļĨāļāļāđāļŦāļĄāđāļāđāļ§āļĒ Exponential Backoff āļŦāļĢāļ·āļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļŠāļģāļĢāļāļāđāļĄāļ·āđāļāđāļāļīāļāļāđāļāļāļīāļāļāļĨāļēāļ āđāļāļ·āđāļāļĢāļąāļāļĐāļēāļāļ§āļēāļĄāļāđāļāđāļāļ·āđāļāļāļāļāļāļāļĢāļīāļāļēāļĢ āļāļąāđāļāļāļĩāđāļāļķāđāļāļāļĒāļđāđāļāļąāļāļāļĢāļīāļāļāļāļāļāđāļāļāļāļĨāļīāđāļāļāļąāļ
- āļāļēāļĢāļāļĢāļ§āļāļŠāļāļāļŠāļīāļāļāļīāđāđāļĨāļ°āļāļēāļĢāļāļāļļāļāļēāļ: āđāļāđāļāļĨāđāļāļāļēāļĢāļāļĢāļ§āļāļŠāļāļāđāļĨāļ°āļāļēāļĢāļāļāļļāļāļēāļāļāļĩāđāđāļŦāļĄāļēāļ°āļŠāļĄāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āđāļāļ·āđāļāđāļŦāđāļĄāļąāđāļāđāļāļ§āđāļēāđāļāļāļēāļ°āļāļđāđāđāļāđāļāļĩāđāđāļāđāļĢāļąāļāļāļāļļāļāļēāļāđāļāđāļēāļāļąāđāļāļāļĩāđāļŠāļēāļĄāļēāļĢāļāđāļāđāļēāļāļķāļāļāđāļāļĄāļđāļĨāļŦāļĢāļ·āļāļāļģāđāļāļīāļāļāļēāļĢāđāļāđ āļāļķāđāļāļāļēāļāđāļāļĩāđāļĒāļ§āļāđāļāļāļāļąāļāļāļēāļĢāđāļāđāđāļāđāļāđāļāđāļāļŠāļāļąāļ, āļāļĩāļĒāđ API āļŦāļĢāļ·āļāđāļāđāļāđāļ OAuth āđāļāļ·āđāļāļĢāļąāļāļĐāļēāļāļ§āļēāļĄāļāļĨāļāļāļ āļąāļĒāļāļēāļĢāđāļāđāļēāļāļķāļāļāļĢāļąāļāļĒāļēāļāļĢ WebSocket
WebSocket āđāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļĨāļāđāļŦāđāļāļāļ§āļēāļĄāđāļāđāļāļāļĢāļīāļ
WebSocket Protocol āļāļđāļāļāļģāļĄāļēāđāļāđāļāļąāļāļāļĒāđāļēāļāđāļāļĢāđāļŦāļĨāļēāļĒāđāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāđāļĨāļāđāļŦāđāļāļāļ§āļēāļĄāđāļāđāļāļāļĢāļīāļ āđāļāļ·āđāļāļāļāļēāļāļĄāļĩāļāļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļāđāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļŠāļāļāļāļīāļĻāļāļēāļāđāļĨāļ°āļĄāļĩāļāļ§āļēāļĄāļŦāļāđāļ§āļāļāđāļģ āļāļąāļ§āļāļĒāđāļēāļāļāļĢāļāļĩāļāļēāļĢāđāļāđāļāļēāļāļāļąāđāļ§āđāļāđāļāđāđāļāđ:
- āđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļ: āļāļēāļĢāļŠāļĢāđāļēāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāļāļģāđāļāđāļāļāđāļāļāļĄāļĩāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļĢāļ°āļŦāļ§āđāļēāļāļāļđāđāđāļāđ āđāļāļĢāđāļāļāļāļĨ WebSocket āļāđāļ§āļĒāđāļŦāđāļŠāļēāļĄāļēāļĢāļāļŠāđāļāļāđāļāļāļ§āļēāļĄāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāđāļāđāļāļĒāđāļēāļāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ āđāļāļĒāđāļĄāđāļāđāļāļāđāļŠāļĩāļĒāļāđāļēāđāļāđāļāđāļēāļĒāđāļāļāļēāļĢāđāļāļĨāļāđāļģāļŦāļĢāļ·āļāļĢāļāļāļāļēāļĢāļāļāļāļāļĨāļąāļāļāļģāļāļ HTTP āđāļāļāļāļąāđāļāđāļāļīāļĄ
- āđāļāļĄāļāļāļāđāļĨāļāđ: āđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļĄāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāđāļāļāļāļēāļĢāļāļēāļĢāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāđāļāļĄāļđāļĨāļāļĒāđāļēāļāļĢāļ§āļāđāļĢāđāļ§āļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ WebSocket āļĄāļāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļŠāļāļāļāļīāļĻāļāļēāļāļāļĩāđāļĄāļĩāļāļ§āļēāļĄāļŦāļāđāļ§āļāļāđāļģ āļāļĢāļąāļāļāļĢāļļāļāļāļĢāļ°āļŠāļāļāļēāļĢāļāđāļāļēāļĢāđāļĨāđāļāđāļāļĄāļāđāļ§āļĒāļāļēāļĢāđāļāđāļāļāļāļāļĩāđāļĢāļēāļāļĢāļ·āđāļāđāļĨāļ°āļāļāļāļŠāļāļāļ
- āļāļēāļĢāđāļāđāļāđāļāļ·āļāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđ: āļāļēāļĢāđāļāđāļāļļāļāļŠāļĄāļāļąāļāļīāļāļēāļĢāļāļąāļāđāļāļāļŠāļ āđāļāđāļ āļāļĩāļāđāļāđāļāļĩāļĒāļĨāļĄāļĩāđāļāļĩāļĒ āļāļēāļĢāđāļāđāļāđāļāļ·āļāļāļāļēāļāļāļĩāđāļĄāļĨ āļŦāļĢāļ·āļāļāļēāļĢāļāļąāļāđāļāļāļāļēāļĢāļāļīāļāļāļēāļĄāļāļēāļ āļŠāļēāļĄāļēāļĢāļāļāļģāđāļāđāļāđāļ§āļĒ WebSocket āļāđāļ§āļĒāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļĩāđāļāđāļāđāļāļ·āđāļāļāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ
- āļāļēāļĢāļŠāļāļĢāļĩāļĄāļĢāļēāļĒāļāļēāļĢāļŠāļ: āļāļēāļĢāļŠāļāļĢāļĩāļĄāļĢāļēāļĒāļāļēāļĢāļŠāļ āđāļāđāļ āļāļēāļĢāļĢāļēāļĒāļāļēāļāļāđāļēāļ§āļāļĩāļŽāļē āļāļēāļĢāļŠāļāļĢāļĩāļĄāđāļŠāļĩāļĒāļāđāļĨāļ°āļ§āļīāļāļĩāđāļ āļŦāļĢāļ·āļāļŠāļīāļāļāļīāļāļĢāļ°āđāļĒāļāļāđāļāļēāļĢāļāļąāļāđāļāļāļāļĨāļēāļāļŦāļļāđāļāļāļēāļāļāļēāļĢāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāđāļāļāļ§āļēāļĄāļāļĩāđāļĢāļ§āļāđāļĢāđāļ§āđāļĨāļ°āđāļāļ·āđāļāļāļ·āļāđāļāđāļāļķāđāļāļāļģāļāļ§āļĒāļāļ§āļēāļĄāļŠāļ°āļāļ§āļāđāļāļĒ WebSocket
- āđāļāļĨāļāļāļāļĢāđāļĄāļāļēāļĢāļāļ·āđāļāļāļēāļĒāļāļēāļāļāļēāļĢāđāļāļīāļ: āđāļāļĨāļāļāļāļĢāđāļĄāļāļēāļāļāļēāļĢāđāļāļīāļāļāļķāđāļāļāļĒāļđāđāļāļąāļāļāļēāļĢāļāļąāļāđāļāļāļĢāļēāļāļēāļŦāļļāđāļāđāļĨāļ°āļāđāļāļĄāļđāļĨāļāļēāļĢāļāļĨāļēāļāļāļ·āđāļ āđ āđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđ WebSocket āđāļŦāđāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļāļĩāđāļĄāļĩāļāļ§āļēāļĄāļŦāļāđāļ§āļāļāđāļģ āļāđāļ§āļĒāđāļŦāđāđāļāļĨāļāļāļāļĢāđāļĄāļŠāļēāļĄāļēāļĢāļāļŠāđāļāļāļēāļĢāļāļąāļāđāļāļāđāļāļĒāļąāļāļāļđāđāđāļāđāļāļąāđāļ§āđāļĨāļāđāļāđāļāļĒāđāļēāļāļĢāļ§āļāđāļĢāđāļ§
- āļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļāļąāļāļāļļāļāļāļĢāļāđ IoT: āļāļļāļāļāļĢāļāđ Internet of Things (IoT) āļĄāļąāļāļāđāļāļāļāļēāļĢāļāļēāļĢāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāđāļāļĄāļđāļĨāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļąāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđāđāļāđāļāđāļāļāļāđāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāļĢāļ§āļāļŠāļāļāđāļĨāļ°āļāļ§āļāļāļļāļĄ WebSocket āļāļģāđāļŦāđāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļāđāļēāļĒāļāļķāđāļ āļāđāļ§āļĒāđāļŦāđāļāļēāļĢāļāļąāļāļāļēāļĢāļāļļāļāļāļĢāļāđāļāļĩāđāđāļāļ·āđāļāļĄāļāđāļāđāļĢāđāļ§āļāļķāđāļāđāļĨāļ°āļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļĄāļēāļāļāļķāđāļ
āđāļāļāļēāļĢāđāļāđāļāļąāļāļāđāļāļąāļ WebSocket āļŠāļģāļŦāļĢāļąāļāđāļ§āđāļ āļāļļāļāļāļĢāļāđāđāļāļĨāļ·āđāļāļāļāļĩāđ āđāļĨāļ°āđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāđāļāđāļāļāļāđ AppMaster āļāļķāļāđāļāđāļāđāļāļĨāļāļāļāļĢāđāļĄ āļāļĩāđāđāļĄāđāļĄāļĩāđāļāđāļ āļāļąāļāļāļĢāļāļāļĨāļąāļāļāļĩāđāļĢāļāļāļĢāļąāļāļāļēāļĢāļĢāļ§āļĄ WebSocket AppMaster āļāđāļ§āļĒāđāļŦāđāļāļđāđāđāļāđāļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļ āļāļąāļāļāļēāļĢ āđāļĨāļ°āļāļĢāļąāļāđāļāđāļ WebSocket API āđāļāļ·āđāļāļĨāļāļāļ§āļēāļĄāļāļąāļāļāđāļāļāļāļāļāļāļĢāļ°āļāļ§āļāļāļēāļĢāļāļąāļāļāļēāļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđ āļāđāļ§āļĒāļāļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļāļāļĩāđāļŦāļĨāļēāļāļŦāļĨāļēāļĒ AppMaster āļāđāļ§āļĒāđāļŦāđāļāļąāļāļāļąāļāļāļēāļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļĩāđāļāļĢāļąāļāļāļāļēāļāđāļāđ āļāļĨāļāļāļ āļąāļĒ āđāļĨāļ°āļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ āđāļāļĒāđāļāđāļāļĢāļ°āđāļĒāļāļāđāļāļēāļāļĻāļąāļāļĒāļ āļēāļāļŠāļđāļāļŠāļļāļāļāļāļāđāļāļāđāļāđāļĨāļĒāļĩ WebSocket
āļāļēāļĢāđāļāđāļāļĢāļ°āđāļĒāļāļāđāļāļēāļ AppMaster āļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāļąāļāļāļē WebSocket
āļāļēāļĢāļāļąāļāļāļēāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāđāļ§āļĒāļāļąāļāļāđāļāļąāļ WebSocket āļāļēāļāđāļāđāļāļāļĢāļ°āļāļ§āļāļāļēāļĢāļāļĩāđāļāļąāļāļāđāļāļāđāļĨāļ°āđāļāđāđāļ§āļĨāļēāļāļēāļ āļāļĩāđāļāļ·āļāļāļļāļāļāļĩāđ AppMaster āļāļķāđāļāđāļāđāļāđāļāļĨāļāļāļāļĢāđāļĄ no-code āļāļąāļāļāļĢāļāļāļĨāļąāļ āļŠāļēāļĄāļēāļĢāļāļĄāļāļāļāļĢāļ°āđāļĒāļāļāđāļāļĩāđāļŠāļģāļāļąāļāđāļŦāđāļāļąāļāļāļąāļāļāļąāļāļāļēāđāļĨāļ°āļāļļāļĢāļāļīāļāļāļĩāđāļāđāļāļāļāļēāļĢāđāļāđāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ WebSocket
AppMaster āđāļāđāđāļāļĨāļĩāđāļĒāļāđāļāļĄāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāļąāļāļāļēāđāļāļāđāļāļĒāļĄāļāļāđāļāļĨāļāļāļāļĢāđāļĄāļāļĩāđāļĄāļāļāđāļŦāđāļāđāļāđāđāļĨāļ°āļāļĨāđāļāļāļāļąāļ§āļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļŠāļĢāđāļēāļāđāļāđāļāđāļāļāļāđ āđāļ§āđāļ āđāļĨāļ° āđāļāļāļāļĨāļīāđāļāļāļąāļāļĄāļ·āļāļāļ·āļ āļāļļāļāļŠāļēāļĄāļēāļĢāļāļāļāļāđāļāļāđāļĨāļ°āļŠāļĢāđāļēāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļĩāđāļāļąāļāļāđāļāļāđāļāđāļāļĒāđāļēāļāļāđāļēāļĒāļāļēāļĒāļāđāļ§āļĒāļāļēāļĢāļŠāļāļąāļāļŠāļāļļāļ WebSocket āđāļāļĒāđāļāđāļāļĢāļ°āđāļĒāļāļāđāļāļēāļāļāļļāļāļŠāļĄāļāļąāļāļīāđāļĨāļ°āļāļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļāļāļāļāļĄāļąāļ
āļāļēāļĢāļāļāļāđāļāļāļ āļēāļāđāļĨāļ°āļāļēāļĢāļŠāļĢāđāļēāļāļĨāļāļāļīāļāļāļēāļāļāļļāļĢāļāļīāļ
āļāđāļāļāļĩāļŦāļĨāļąāļāļāļĢāļ°āļāļēāļĢāļŦāļāļķāđāļāļāļāļāļāļēāļĢāđāļāđ AppMaster āļāļ·āļāļāļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļāđāļāļāļēāļĢāļāļģāļāļēāļāđāļāļāļĄāļāļāđāļŦāđāļāđāļāđ āđāļāļĒāđāļāđāļāļīāļāđāļāļāļĢāđāđāļāļ drag-and-drop āđāļāļ·āđāļāļŠāļĢāđāļēāļāļŠāđāļ§āļāļāļĢāļ°āļāļāļ UI āļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļāļāļāļļāļ āļāļāļāļāļēāļāļāļĩāđ āđāļāļĨāļāļāļāļĢāđāļĄāļāļąāļāļāļĨāđāļēāļ§āļĒāļąāļāļĄāļĩāļāļąāļ§āļāļāļāđāļāļāļāļĢāļ°āļāļ§āļāļāļēāļĢāļāļēāļāļāļļāļĢāļāļīāļ (BP) āđāļāļĒāđāļāļāļēāļ°āļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļŠāļĢāđāļēāļāļāļĢāļĢāļāļ°āļāļēāļāļāļļāļĢāļāļīāļāļāļāļāļāļļāļāļŠāđāļ§āļāļāļĢāļ°āļāļāļ āļŠāļīāđāļāļāļĩāđāļāļģāđāļŦāđāļāļēāļĢāļāļģāļāļēāļāļāļąāļ WebSockets āļāđāļēāļĒāļāļķāđāļ āļāđāļ§āļĒāđāļŦāđāļāļļāļāļŠāļĢāđāļēāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāđāļāļīāļāđāļāđāļāļāļāđāļāđāļāļĒāđāļēāļāļĢāļ§āļāđāļĢāđāļ§āđāļĨāļ°āļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
āļāļāļĢāđāļŠāđāļāđāļāļāļĩāđāļŠāļĢāđāļēāļāļāļķāđāļāđāļĨāļ°āļāļēāļĢāļĢāļ§āļāļĢāļ§āļĄāđāļāļāļāļĨāļīāđāļāļāļąāļ
AppMaster āļŠāļĢāđāļēāļāļāļāļĢāđāļŠāđāļāđāļāļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļāļāļāļļāļāđāļāļ āļēāļĐāļēāļĒāļāļāļāļīāļĒāļĄ āđāļāđāļ Go āļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāđāļāđāļāļāļāđ, Vue3 āļāļĢāđāļāļĄ JS/TS āļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļāđāļ§āđāļ āđāļĨāļ° Kotlin āđāļĨāļ° SwiftUI āļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļĄāļ·āļāļāļ·āļāļāļ Android āđāļĨāļ° iOS āļāļēāļĄāļĨāļģāļāļąāļ āđāļāļĨāļāļāļāļĢāđāļĄāļāļąāļāļāļĨāđāļēāļ§āļĢāļ§āļāļĢāļ§āļĄāđāļāļāļāļĨāļīāđāļāļāļąāļ āļĢāļąāļāļāļēāļĢāļāļāļŠāļāļ āļāļąāļāļāļģāđāļāđāļāđāļāļāđāļāļĢāđāļāđāļāļāđāļĨāļāđāļ āļāļāļāđāļāļāđāļāļāļĢāđ Docker (āļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāđāļāđāļāļāļāđ) āđāļĨāļ°āļāļĢāļąāļāđāļāđāļāļāļāļĨāļēāļ§āļāđ āļŦāļēāļāļāļļāļāļĄāļĩāļāļēāļĢāļŠāļĄāļąāļāļĢāļŠāļĄāļēāļāļīāļ Enterprise āļāļļāļāļŠāļēāļĄāļēāļĢāļāļĢāļąāļāļāļāļĢāđāļŠāđāļāđāļāļāļĩāđāļŠāļĢāđāļēāļāļāļķāđāļāđāļāļ·āđāļāđāļŪāļŠāļāđāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļāļāļāļļāļāļ āļēāļĒāđāļāļāļāļāđāļāļĢ āļāļģāđāļŦāđāļāļļāļāļāļ§āļāļāļļāļĄāļāļēāļĢāđāļāđāļāļēāļāļāļāļāļāļļāļāđāļāđāļāļĒāđāļēāļāđāļāđāļĄāļāļĩāđ
āļāļđāļĢāļāļēāļāļēāļĢāļāļąāļāđāļāļāđāļāđāļĨāļĒāļĩ WebSocket
AppMaster āļāđāļ§āļĒāđāļŦāđāļāļļāļāļŠāļēāļĄāļēāļĢāļāļĢāļ§āļĄāļāļąāļāļāđāļāļąāļ WebSocket āđāļāđāļēāļāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļāļāļāļļāļāđāļāđāđāļāļĒāļāļĢāļ AppMaster āļāđāļ§āļĒāđāļŦāđāļāļąāļāļāļąāļāļāļēāļĄāļļāđāļāđāļāđāļāđāļāļāļĩāđāļāļēāļĢāļāļāļāđāļāļāđāļĨāļ°āļāļēāļĢāđāļāđāļāļēāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ WebSocket āļāļĩāđāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļŠāļģāļŦāļĢāļąāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāđāļāļĒāļāļēāļĢāļāļđāđāļĨāđāļāļāđāļāđāļĨāļĒāļĩāļāļ·āđāļāļāļēāļāđāļĨāļ°āļāļąāļāļŦāļēāđāļāļĢāļ·āđāļāļāļĄāļ·āļāļāļēāļĢāļāļąāļāļāļēāļ āļēāļ āļāļ§āļēāļĄāļĒāļ·āļāļŦāļĒāļļāđāļāļāļāļāđāļāļĨāļāļāļāļĢāđāļĄāļāļģāđāļŦāđāļāļļāļāļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļ WebSocket API āļāļąāļāļāļēāļĢāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āđāļĨāļ°āļāļāļāđāļāļāđāļĄāđāļāļĨāļāđāļāļĄāļđāļĨāđāļĨāļ°āļāļĢāļĢāļāļ°āļāļĩāđāļāļģāđāļāđāļāđāļāļ·āđāļāļāļģāļāļēāļāļāļąāļāļāđāļāļĄāļđāļĨ WebSocket āđāļāđāļāļĒāđāļēāļāļāđāļēāļĒāļāļēāļĒ
āļāļēāļĢāļāļąāļāļāļēāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļŠāļģāļŦāļĢāļąāļāļāļĢāļāļĩāļāļēāļĢāđāļāđāļāļēāļāļāļĩāđāļĄāļĩāđāļŦāļĨāļāļŠāļđāļ
āļāđāļ§āļĒāļāļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļāļāļąāļāļāđāļēāļāļĢāļ°āļāļąāļāđāļāļāļāļ AppMaster āđāļāļāļāļĨāļīāđāļāļāļąāļāļāļĩāđāļŠāļĢāđāļēāļāļāļķāđāļāļāļķāļāđāļŦāļĄāļēāļ°āļāļĒāđāļēāļāļĒāļīāđāļāļŠāļģāļŦāļĢāļąāļāļāļĢāļāļĩāļāļēāļĢāđāļāđāļāļēāļāļĢāļ°āļāļąāļāļāļāļāđāļāļĢāļāļĩāđāļĄāļĩāļ āļēāļĢāļ°āļāļēāļāļŠāļđāļ āđāļāļĨāļāļāļāļĢāđāļĄāļāļąāļāļāļĨāđāļēāļ§āļĢāļāļāļĢāļąāļāļāļēāļāļāđāļāļĄāļđāļĨāļāļĩāđāđāļāđāļēāļāļąāļāđāļāđāļāļąāļ Postgresql āđāļāđāļāļāļēāļāļāđāļāļĄāļđāļĨāļŦāļĨāļąāļ āđāļĨāļ°āđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāđāļāđāļāļāļāđāđāļāļāđāļĢāđāļŠāļāļēāļāļ°āļāļĩāđāļāļāļĄāđāļāļĨāđāđāļĨāđāļ§āļāļģāļāļēāļāđāļāđāļāļĩāļŠāļģāļŦāļĢāļąāļāļŠāļ āļēāļāđāļ§āļāļĨāđāļāļĄāļāļĩāđāļāļĢāļąāļāļāļāļēāļāđāļāđ āđāļĄāļ·āđāļāđāļāđ AppMaster āļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļāļąāļāļāļē WebSocket āļāļļāļāļŠāļēāļĄāļēāļĢāļāļĄāļąāđāļāđāļāđāļāđāļ§āđāļēāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļāļāļāļļāļāļāļāļāļŠāļāļāļāļāļ§āļēāļĄāļāđāļāļāļāļēāļĢāļāļāļāļŠāļāļēāļāļāļēāļĢāļāđāļāļĩāđāļĄāļĩāđāļŦāļĨāļāļŠāļđāļ āđāļāļĒāđāļŦāđāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ WebSocket āļāļĩāđāđāļāļ·āđāļāļāļ·āļāđāļāđāđāļĨāļ°āļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļ
AppMaster āđāļāđāļāđāļāļĢāļ·āđāļāļāļĄāļ·āļāļāļąāļāļĨāđāļģāļāđāļēāļŠāļģāļŦāļĢāļąāļāļāļąāļāļāļąāļāļāļēāļāļĩāđāļāđāļāļāļāļēāļĢāļŠāļĢāđāļēāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļ WebSocket āļāļēāļĢāļāļāļāđāļāļāļ āļēāļ āļāļāļĢāđāļŠāđāļāđāļāļāļĩāđāļŠāļĢāđāļēāļāļāļķāđāļ āļāļēāļĢāļāļŠāļēāļāļĢāļ§āļĄ WebSocket āļāļĩāđāļĢāļēāļāļĢāļ·āđāļ āđāļĨāļ°āļāļēāļĢāļĢāļāļāļĢāļąāļāļāļĢāļāļĩāļāļēāļĢāđāļāđāļāļēāļāļāļĩāđāļāļĢāļąāļāļāļāļēāļāđāļāđāđāļĨāļ°āļĄāļĩāļ āļēāļĢāļ°āļāļēāļāļŠāļđāļ āļāļģāđāļŦāđāđāļāļĨāļāļāļāļĢāđāļĄāļāļĩāđāđāļāđāļāļāļąāļ§āđāļĨāļ·āļāļāļāļąāļāļāļąāļāļāđāļāđ āļŠāļģāļŦāļĢāļąāļāļāļļāļĢāļāļīāļāđāļĨāļ°āļāļąāļāļāļąāļāļāļē āļāļĒāđāļēāļāļĨāđāļāļĒāđāļŦāđāļāļ§āļēāļĄāļāļąāļāļāđāļāļāļāļāļāļāļēāļĢāļāļąāļāļāļē WebSocket āđāļāđāļāļāļļāļāļŠāļĢāļĢāļāļāđāļāļāļļāļ āļŠāļąāļĄāļāļąāļŠāļāļĨāļąāļāļāļāļ AppMaster āđāļĨāļ°āļŠāļĢāđāļēāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļĩāđāđāļāđāļāļāļ§āļąāļāļāļĢāļĢāļĄāđāļŦāļĄāđāđāļāđāļāļĒāđāļēāļāļāđāļēāļĒāļāļēāļĒ
āļāļģāļāļēāļĄāļāļĩāđāļāļāļāđāļāļĒ
WebSocket Protocol āđāļāđāļāđāļāļĢāđāļāļāļāļĨāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļĩāđāļāđāļ§āļĒāđāļŦāđāļŠāļēāļĄāļēāļĢāļāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāđāļāļĄāļđāļĨāđāļāļāļŠāļāļāļāļīāļĻāļāļēāļāļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđāļāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāļĩāļĒāļ§āļāļĩāđāļĄāļĩāļāļēāļĒāļļāļāļēāļĢāđāļāđāļāļēāļāļĒāļēāļ§āļāļēāļ
WebSocket Protocol āđāļŦāđāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļŠāļāļāļāļīāļĻāļāļēāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāđāļĨāļ°āļĨāļāđāļ§āļĨāļēāđāļāļāđāļāļĒāļāļēāļĢāļĢāļąāļāļĐāļēāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāļāđāļāļīāļāđāļāļĩāļĒāļāļāļļāļāđāļāļĩāļĒāļ§ āđāļāļāļēāļāļāļĢāļāļāļąāļāļāđāļēāļĄ HTTP āļāļēāļĻāļąāļĒāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļĩāđāļāļāļāļŠāļāļāļāļāđāļāļāļģāļāļāļŦāļĨāļēāļĒāļĢāļēāļĒāļāļēāļĢāļāļķāđāļāļŠāļĢāđāļēāļāđāļāđāļ§āļāļĢāđāđāļŪāļāđāļĨāļ°āđāļ§āļĨāļēāđāļāļāļēāļĢāļāļāļāļŠāļāļāļ
āļāļēāļĢāļāļąāļāļĄāļ·āļ WebSocket āđāļāđāļāļāļĢāļ°āļāļ§āļāļāļēāļĢāđāļĢāļīāđāļĄāļāđāļāļāļĩāđāļŠāļĢāđāļēāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļĢāļ°āļŦāļ§āđāļēāļāđāļāļĨāđāļāļāļāđāđāļĨāļ°āđāļāļīāļĢāđāļāđāļ§āļāļĢāđ āđāļĢāļīāđāļĄāļāđāļāļāđāļ§āļĒāļāļģāļāļ HTTP āđāļĨāļ°āļāļąāļāđāļāļĢāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāđāļāđāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket
āļāđāļāļĄāļđāļĨāđāļāļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢ WebSocket āļĄāļĩāđāļāļĢāļāļŠāļĢāđāļēāļāđāļāđāļāđāļāļĢāļĄ WebSocket āļāļķāđāļāļāļĢāļ°āļāļāļāļāđāļ§āļĒāļāđāļāļĄāļđāļĨāļāļēāļĢāļāļ§āļāļāļļāļĄāđāļĨāļ°āļāđāļāļĄāļđāļĨ āđāļāļĢāđāļāļāļāļĨāļāļ°āļāļģāļŦāļāļāļāļĢāļ°āđāļ āļāļāđāļēāļāđ āļāļāļāļāļĢāļāļāļāļ§āļāļāļļāļĄāđāļĨāļ°āļāļĢāļāļāļāđāļāļĄāļđāļĨ āļĢāļ§āļĄāļāļķāļāļāļĢāļāļāļāđāļāļāļ§āļēāļĄ āđāļāļāļēāļĢāļĩ āđāļĨāļ°āļāļĢāļāļāļāļ§āļāļāļļāļĄ
āđāļāļĢāđāļāļāļāļĨāļĒāđāļāļĒ WebSocket āđāļāđāļāđāļāļĢāđāļāļāļāļĨāđāļāļīāđāļĄāđāļāļīāļĄāđāļāļāļēāļ°āđāļāļāļāļĨāļīāđāļāļāļąāļāļāļĩāđāđāļĨāđāļĒāļāļĢāđāļāļ WebSocket Protocol āļāļ·āđāļāļāļēāļ āđāļāļĒāļāļ°āļāļģāļŦāļāļāļāļāđāļĨāļ°āđāļāļāđāļāļāļŠāļģāļŦāļĢāļąāļāļāļąāļāļāđāļāļąāļāļāļēāļĢāļāļģāļāļēāļāđāļĨāļ°āļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāđāļāļāļāļģāļŦāļāļāđāļāļāļ āļēāļĒāđāļāļāļĢāļāļĩāļāļēāļĢāđāļāđāļāļēāļāđāļāļāļēāļ°
WebSocket API āļāļ·āļāļāļēāļĢāđāļāđāļāļēāļ JavaScript āļāļāđāļāļĢāļēāļ§āđāđāļāļāļĢāđāļāļāļ WebSocket Protocol āļāđāļ§āļĒāđāļŦāđāļāļąāļāļāļąāļāļāļēāļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāđāļ§āđāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāļĩāđāđāļāđāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āđāļāļ·āđāļāđāļĨāļāđāļāļĨāļĩāđāļĒāļāļāđāļāļĄāļđāļĨāļāļąāļāđāļāļīāļĢāđāļāđāļ§āļāļĢāđ WebSocket
āļāđāļāļāļ§āļĢāļāļīāļāļēāļĢāļāļēāļāđāļēāļāļāļ§āļēāļĄāļāļĨāļāļāļ āļąāļĒāļāļāļ WebSocket āđāļāđāđāļāđ āļāđāļĒāļāļēāļĒāļāđāļāļāļģāđāļāļīāļāđāļāļĩāļĒāļ§āļāļąāļ āļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļ WebSocket āļāļĩāđāļāļĨāļāļāļ āļąāļĒ (WSS) āļāļēāļĢāļāļĢāļ§āļāļŠāļāļāđāļĨāļ°āļāļĢāļ§āļāļŠāļāļāļāļīāļāļāļļāļāļāļāļāļāļđāđāđāļāđ āļāļēāļĢāļāļąāļāļāļēāļĢāļāļąāļāļāļēāļĢāļāļąāļāļāļēāļĢāđāļāļ·āđāļāļĄāļāđāļāļāļĩāđāđāļĄāđāļāļēāļāļāļīāļ āđāļĨāļ°āđāļāđāļāļĨāđāļāļāļēāļĢāļāļĢāļ§āļāļŠāļāļāļŠāļīāļāļāļīāđāđāļĨāļ°āļāļēāļĢāļāļāļļāļāļēāļāļāļĩāđāđāļŦāļĄāļēāļ°āļŠāļĄ
WebSocket Protocol āđāļāđāđāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāđāļēāļāđ āđāļāđāļ āđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļ āđāļāļĄāļāļāļāđāļĨāļāđ āļāļēāļĢāđāļāđāļāđāļāļ·āļāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđ āļāļēāļĢāļŠāļāļĢāļĩāļĄāđāļŦāļāļļāļāļēāļĢāļāđāļŠāļ āđāļāļĨāļāļāļāļĢāđāļĄāļāļēāļĢāļāļ·āđāļāļāļēāļĒāļāļēāļāļāļēāļĢāđāļāļīāļ āđāļĨāļ°āļāļēāļĢāļŠāļ·āđāļāļŠāļēāļĢāļāļāļāļāļļāļāļāļĢāļāđ IoT
AppMaster āļāļķāđāļāđāļāđāļāđāļāļĨāļāļāļāļĢāđāļĄ no-code āļāļąāļāļāļĢāļāļāļĨāļąāļ āļĢāļāļāļĢāļąāļāļāļēāļĢāļāļŠāļēāļāļĢāļ§āļĄ WebSocket āļāđāļ§āļĒāđāļŦāđāļāļąāļāļāļąāļāļāļēāļŠāļēāļĄāļēāļĢāļāļŠāļĢāđāļēāļāđāļĨāļ°āļāļąāļāļāļēāļĢ WebSocket API āļŦāļĢāļ·āļ WebSockets āđāļāđāļāļāļāļĨāļīāđāļāļāļąāļāļāļāļāļāļāđāļāđāļāļĒāđāļēāļāļāđāļēāļĒāļāļēāļĒ
āđāļāđ AppMaster āļĢāļāļāļĢāļąāļāļāļēāļĢāļĢāļ§āļĄ WebSocket āļāļķāđāļāđāļāđāļāļāļĢāļ°āļāļ§āļāļāļēāļĢāļāļĩāđāļĄāļĩāļāļĢāļ°āļŠāļīāļāļāļīāļ āļēāļāļŠāļģāļŦāļĢāļąāļāļāļēāļĢāļŠāļĢāđāļēāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāļāđāļĢāļĩāļĒāļĨāđāļāļĄāđāļāđāļ§āļĒāļāļąāļāļāđāļāļąāļ WebSocket āļĢāļ§āļĄāļāļķāļāđāļāļāļāļĨāļīāđāļāļāļąāļāđāļāđāļāđāļāļāļāđ āđāļ§āđāļ āđāļĨāļ°āđāļāļāļāļĨāļīāđāļāļāļąāļāļĄāļ·āļāļāļ·āļ


