O protocolo WebSocket é um novo protocolo do HTML5. Ele realiza comunicação full-duplex entre o navegador e o servidor e permite a comunicação entre domínios. É uma boa implementação da tecnologia push de servidor. Usamos Socket.io, que encapsula muito bem a interface webSocket, fornece uma interface mais simples e flexível e também oferece compatibilidade retroativa para navegadores que não suportam webSocket.
Encontro um problema de domínio cruzado de JavaScript em meu projeto. A página pai e a página filha precisam se comunicar, e as páginas pai e filho são de domínio cruzado.
No projeto, precisamos garantir que a comunicação entre as páginas pai e filho seja ponto a ponto. Precisamos estabelecer uma correspondência WebSocket entre as páginas pai e filho no lado do servidor. são recebidas apenas pela página filha e as mensagens da página filha são recebidas apenas pela página pai. Fizemos o seguinte, estritamente garantido.
A comunicação WebSocket é ponto a ponto:Primeiro, a URL para estabelecer o link WebSocket é adicionada com um carimbo de data/hora para garantir que a sessão de comunicação seja exclusiva;
A segunda é garantir a correspondência WebSocket individual entre as páginas pai e filho no lado do servidor. Ao abrir o WebSocket das páginas pai e filho, ele enviará uma mensagem ao servidor para se cadastrar e estabelecer o relacionamento correspondente entre as Sensões. Então as páginas pai e filho podem se comunicar através do protocolo de comunicação restrito por ambas as partes.
Aqui escrevemos uma demonstração:
var p = document.getElementsByTagName('p ')[0];var io = io.connect('http://127.0.0.1:3001 ');io.on('dados ',function(dados){alert( 'Alterar dados após 2S');p.innerHTML = data});
lado do servidor
var io = require('socket.io ')(servidor);io.on('connection ',function(client){client.emit('data ', 'olá WebSocket de 3001. ');});
Por hoje é tudo, espero que seja útil para você. Ao mesmo tempo, se não quiser gastar muito tempo no WebSocket, você pode tentar usar o WebSocket de terceiros, semelhante ao GoEasy Aurora.
GoEasy é recomendado aqui, é simples e fácil de usar www.goeasy.io e é gratuito, você pode experimentar.
O texto acima é todo o conteúdo deste artigo. Espero que seja útil para o estudo de todos. Também espero que todos apoiem a Rede VeVb Wulin.