El protocolo WebSocket es un nuevo protocolo de HTML5. Realiza una comunicación full-duplex entre el navegador y el servidor y permite la comunicación entre dominios. Es una buena implementación de la tecnología de inserción del servidor. Usamos Socket.io, que encapsula muy bien la interfaz webSocket, proporciona una interfaz más simple y flexible y también proporciona compatibilidad con versiones anteriores para navegadores que no admiten webSocket.
Encuentro un problema de dominio cruzado de JavaScript en mi proyecto. La página principal y la página secundaria deben comunicarse, y las páginas principal y secundaria son de dominio cruzado.
En el proyecto, debemos asegurarnos de que la comunicación entre las páginas principal y secundaria sea punto a punto. Necesitamos establecer una correspondencia WebSocket entre las páginas principal y secundaria en el lado del servidor. La página solo los recibe la página secundaria, y los mensajes de la página secundaria solo los recibe la página principal. Hicimos el siguiente trabajo, estrictamente garantizado.
La comunicación WebSocket es de igual a igual:Primero, la URL para establecer el enlace WebSocket se agrega con una marca de tiempo para garantizar que la sesión de comunicación sea única;
El segundo es garantizar la correspondencia WebSocket uno a uno entre las páginas principal y secundaria en el lado del servidor. Cuando se abre el WebSocket de las páginas principal e secundaria, enviará un mensaje al servidor para registrarse y establecer la relación correspondiente entre Senions. Luego, las páginas principal y secundaria pueden comunicarse a través del protocolo de comunicación restringido por ambas partes.
Aquí escribimos una demostración:
var p = document.getElementsByTagName('p ')[0];var io = io.connect('http://127.0.0.1:3001 ');io.on('datos ',función(datos){alerta( 'Cambiar datos después de 2S');p.innerHTML = datos});
lado del servidor
var io = require('socket.io ')(servidor);io.on('conexión ',función(cliente){client.emit('datos ', 'hola WebSocket desde 3001. ');});
Eso es todo por hoy, espero que te resulte útil. Al mismo tiempo, si no quieres dedicar demasiado tiempo a WebSocket, puedes intentar utilizar WebSocket de terceros, similar a GoEasy Aurora.
Aquí se recomienda GoEasy, es simple y fácil de usar www.goeasy.io y es gratis, puedes probarlo.
Lo anterior es el contenido completo de este artículo. Espero que sea útil para el estudio de todos. También espero que todos apoyen VeVb Wulin Network.