Introdução do artigo WebJX: Um novo recurso legal no HTML5 é o WebSockets, que nos permite conversar com o servidor sem solicitações de Ajax. Hoje, o Bingo permitirá que todos executem o WebSocket pelo lado do servidor do ambiente PHP, criem clientes e enviem e recebam informações do lado do servidor através do protocolo WebSockets. O que são websockets? WebSockets são bidirecionais em uma interface (TCP)
Um novo recurso legal no HTML5 é o WebSockets, que nos permite conversar com o servidor sem solicitações de AJAX. Hoje, o Bingo permitirá que todos executem o WebSocket pelo lado do servidor do ambiente PHP, criem clientes e enviem e recebam informações do lado do servidor através do protocolo WebSockets.
O que são websockets?
O WebSockets é uma tecnologia que executa comunicação bidirecional em uma interface (TCP) e um tipo de tecnologia push. Ao mesmo tempo, os WebSockets ainda serão baseados no padrão W3C. Até agora, as versões mais recentes dos navegadores Chrome e Safari já suportaram o WebSockets.
O que os websockets substituirão?
A WebSockets pode substituir a pesquisa longa (PHP Server Push Technology), que é um conceito interessante. O cliente envia uma solicitação para o servidor. Agora, o servidor não responderá aos dados que não foram preparados. Ele manterá a conexão aberta até que os dados mais recentes estejam prontos para serem enviados. Depois disso, o cliente recebe os dados e envia outra solicitação. Isso tem seus benefícios: reduzir a latência em qualquer conexão e não precisa criar outra nova conexão quando uma conexão já estiver aberta. Porém, a enxugar longa não é uma técnica sofisticada, e ainda é possível que as pausas de solicitação ocorram, portanto, será necessária uma nova conexão.
Alguns aplicativos AJAX usam a tecnologia mencionada acima - que é frequentemente atribuída à baixa utilização de recursos.
Imagine o quão bom seria se o servidor iniciar e enviar dados para clientes que gostariam de receber sem precisar configurar algumas portas de conexão com antecedência! Bem -vindo ao mundo da tecnologia push!
Etapa 1: Obtenha o servidor WebSocket
Este tutorial se concentrará mais na criação do cliente do que na execução do servidor.
Eu uso o XAMPP com base no Windows 7 para implementar o PHP em execução localmente. O PHPWebsockets é um servidor PHP WebSocket. (Na minha experiência, existem alguns pequenos problemas com esta versão. Fiz algumas modificações e enviei o arquivo de origem para compartilhar com você.) As versões diferentes diferentes também podem implementar o WebSocket. Se não puder ser usado, você pode experimentar outras versões ou continuar lendo o seguinte tutorial.
JWebSocket (Java)
Web-Socket-Ruby (Ruby)
Socket Io-Node (Node.js)
Inicie o servidor Apache
Etapa 2: Modificar URLs e portas
De acordo com a sua instalação anterior, modifique o servidor, o seguinte é um exemplo em setup.class.php:
}
Navegue no arquivo e faça alterações, se apropriado.
Etapa 3: comece a criar um cliente
Aqui está meu arquivo client.php:
> <>
>
>
>
> por exemplo, tente 'oi', 'nome', 'idade', 'hoje'>
> Desconectar >>
</html>
Criamos o modelo básico: um contêiner de log de bate -papo, uma caixa de entrada de entrada e um botão desconectado.
Etapa 4: adicione alguns CSs
Não há código sofisticado, basta lidar com o estilo da tag.
Corpo
cinza
}
Etapa 5: Evento WebSocket
Primeiro, vamos tentar entender o conceito de eventos do WebSocket:
Eventos da WebSocket:
Usaremos três eventos do WebSocket:
ONOPEN: quando a interface é aberta
OnMessage: quando uma mensagem é recebida
ONCLOSE: Quando a interface está fechada
Como conseguimos isso?
Primeiro, crie um objeto WebSocket
Em seguida, detecte o evento como segue
soquete.
}
Faça isso quando recebermos a mensagem:
Socket.msgmsg); //Incrível!
}
Mas ainda tentamos evitar o uso de alerta e agora podemos integrar o que aprendemos na página do cliente.
Etapa 6: JavaScript
Primeiro, colocamos o código no documento. Função do jQuery e, em seguida, também precisamos verificar se o navegador do usuário suporta o WebSocket. Se não for suportado, adicionaremos um link à página do navegador Chrome.
$
janela
$.
$.
Como você pode ver, se o navegador do usuário suportar WebSocket, executaremos a função Connect (). Aqui está a função principal, começaremos a criar eventos abertos, fechados e recebidos.
Definiremos o URL em nosso servidor.
Você pode descobrir por que não há HTTP no URL? Bem, sim, este é um URL da WebSocket que usa um protocolo diferente. Aqui está um diagrama de quebra de URL: