Este artigo apresenta principalmente os métodos básicos de uso da API de comunicação no HTML5. O artigo envolve dois módulos importantes para a construção de comunicação em tempo real e de domínio cruzado: comunicação de mensagens entre documentos e xmlhttprequest Nível 2. Amigos que precisam, podem se referir à seguinte .
A comunicação de mensagens entre documentos pode garantir que a comunicação cruzada seja realizada com segurança entre iframes, guias e Windows. Ele define a API de pós -Message como a maneira padrão de enviar mensagens. É muito simples usar o PostMessage para enviar mensagens, o código é o seguinte:
ChatFrame.ContextWindow.PostMessage ('Hello, World', 'http: //www.example.com');
Ao receber mensagens, você só precisa adicionar uma função de manuseio de eventos à página. Quando uma mensagem chega, é determinado se deve processar a mensagem verificando a fonte da mensagem.
Um evento de mensagem é um evento DOM com atributos de dados e origem. O atributo de dados é a mensagem real passada pelo remetente, enquanto o atributo de origem é a fonte de envio.
A API de pós-maquiagem não é apenas capaz de comunicação entre documentos homólogos, mas também é útil quando o navegador não permite comunicação não homóloga. Dada a sua consistência e facilidade de uso, a pós -maquiagem também é recomendada ao se comunicar entre documentos homólogos. A API de pós -maquiagem deve sempre ser usada em comunicações em ambientes JavaScript, como ao usar as comunicações do trabalhador da web HTML5.
1.1 Entenda a segurança da fonteO conceito de fonte de introdução de glória HTML5 (Origin) esclareceu e aprimorou a segurança do domínio. A fonte é um subconjunto de endereços usados para estabelecer relacionamentos de confiança na rede. A fonte consiste em uma regra, um host e uma porta.
O conceito de fonte não considera caminhos.
HTML5 define a serialização da fonte. Fontes aparecem como cordas em APIs e protocolos.
As regras de segurança para pós -maquiagem garantem que as mensagens não sejam entregues em páginas de origem inesperadas. Ao enviar uma mensagem, o remetente define a fonte do receptor. Se a janela enviada para ligar para o PostMessage não tiver uma fonte específica (por exemplo, o usuário salta para outro site), o navegador não enviará mensagens.
Da mesma forma, ao receber uma mensagem, a fonte do remetente também é usada como parte da mensagem. Para evitar falsificação, a fonte de mensagem é fornecida pelo navegador. O receptor pode decidir quais mensagens processar e quais mensagens ignorar. Podemos manter uma lista de permissões que diga ao navegador para processar mensagens apenas de fontes confiáveis.
É melhor não avaliar strings de terceiros. Além disso, evite usar o método de avaliação para processar as cadeias internas do aplicativo. Você pode usar o JSON através do Window.JSON ou JSON, .org Parsers.
1.2 Suporte ao navegador para comunicação de mensagens de documentos cruzadosUma prática comum é detectar se a propriedade WitherCredentials existe no objeto XmlHttPrequest:
JavaScript Code Copy Content para a área de transferência