Uso de WebSocket y cómo usarlo en vue
WebSocket simplifica el intercambio de datos entre el cliente y el servidor, permitiendo que el servidor envíe datos activamente al cliente. En la API WebSocket, el navegador y el servidor solo necesitan completar un protocolo de enlace para crear una conexión persistente directamente entre los dos y realizar una transferencia de datos bidireccional.
En la API WebSocket, el navegador y el servidor solo necesitan completar un protocolo de enlace y luego se formará un canal rápido entre el navegador y el servidor. Luego, los dos pueden enviarse datos directamente entre sí.
La tecnología utilizada por muchos sitios web hoy en día para implementar la tecnología push es el sondeo Ajax. El sondeo se produce cuando el navegador envía solicitudes HTTP al servidor a intervalos específicos (por ejemplo, cada segundo) y el servidor devuelve los datos más recientes al navegador del cliente. Este modelo tradicional tiene una desventaja obvia, es decir, el navegador necesita enviar solicitudes continuamente al servidor, pero la solicitud HTTP puede contener encabezados muy largos y los datos válidos reales pueden ser solo una pequeña parte, lo que obviamente desperdiciará mucho. de ancho de banda y otros recursos.
HTML5 define el protocolo WebSocket, que ahorra recursos del servidor y ancho de banda y permite una mayor comunicación en tiempo real.
El navegador envía una solicitud al servidor para establecer una conexión WebSocket a través de JavaScript. Una vez establecida la conexión, el cliente y el servidor pueden intercambiar datos directamente a través de la conexión TCP.
Cuando obtienes una conexión Web Socket, puedes enviar datos al servidor a través del método send() y recibir datos del servidor a través del evento onmessage.
Para establecer una conexión WebSocket, el navegador del cliente primero envía una solicitud HTTP al servidor. Esta solicitud es diferente de la solicitud HTTP habitual. Contiene algunos encabezados adicionales, incluido el encabezado "Actualización: WebSocket". encabezado, que indica que se trata de una solicitud HTTP de actualización de protocolo y que será analizada por el servidor. El servidor analiza estos encabezados adicionales y genera un mensaje de respuesta para el cliente. Al mismo tiempo, se establece una conexión WebSocket entre el cliente y el servidor, lo que permite a ambas partes pasar información libremente en el canal de conexión y la conexión continuará. hasta que el cliente Hasta que el cliente o servidor cierre activamente la conexión
socket.io es una biblioteca que encapsula WebSocket.io. socket.io es una biblioteca de clases que envuelve WebSocket, lo que le permite utilizar WebSocket como interfaz entre un navegador y un servidor.
Si algunos navegadores antiguos no son compatibles con WebSocket, socket.io utilizará el sondeo en su lugar. También tiene funciones como enviar mensajes binarios, multiplexar y crear salas, lo que hace que socket.io sea una mejor opción que usar WebSockets nativos directamente.
El desarrollo de aplicaciones en tiempo real se divide principalmente en dos partes: servidor y cliente, y socket.io proporciona paquetes de software npm invocables para estas dos partes.
A continuación, presentaremos estas dos partes por separado a través de una castaña vivaz e interesante.
Ahora asumimos que Li Bai, Zhang San, Li Si y Wang Wuwu se han unido a una sala llamada sala de ajedrez y cartas. Al final de este artículo, tendremos un pequeño pero completo "Canyon Hero". "Sala de chat en línea.
Las funciones del cliente se completan básicamente aquí. La API principal está activada y emitida para enviar y recibir mensajes, de forma simple y elegante.
La API principal envía y recibe mensajes abriéndolos y transmitiéndolos.