Exemplo de código de WebSocket baseado em HTML5
Código do cliente:
<html><head><script>var socket;if (WebSocket na janela) {var ws = new WebSocket(ws://127.0.0.1:8181);socket = ws;ws.onopen = function() {console. log('Conexão bem-sucedida');};ws.onmessage = function(evt) {var recebeu_msg = evt.data; document.getElementById(showMes).value+=evt.data+/n;};ws.onclose = function() {alert(disconnected);};} else {alert(o navegador não suporta WebSocket);}função login (){ var mensagem=document.getElementById(nome).value+:+document.getElementById(mes).value;socket.send(message);}</script></head><body><textarea rows=3 cols=30 id= showMes style=largura:300px;altura:500px;></textarea><br/><label>Nome</label><input type=text id=name/><br/><label>Mensagem</label><input type=text id=mes/><button onclick=login();>Enviar</button></body></ HTML>
código do servidor winform:
Nota: O pacote Fleck precisa ser introduzido primeiro
usando System;usando System.Collections.Generic;usando System.Linq;usando System.Windows.Forms;usando Fleck;namespace socketService{classe parcial pública Form1 : Form{public Form1(){InitializeComponent();CheckForIllegalCrossThreadCalls = false;}private void Form1_Load(object sender, EventArgs e){//Salvar todas as conexões var allSockets = new List<IWebSocketConnection>();//Inicializar o servidor var server = new WebSocketServer(ws://0.0.0.0:8181);//Iniciar a escuta server.Start(socket =>{//Uma conexão do cliente aciona o soquete. OnOpen = () =>{textBox3.Text += soquete.ConnectionInfo.ClientIpAddress + Connection/r/n;allSockets.Add(socket);};//A desconexão do cliente aciona socket.OnClose = () =>{textBox3.Text += socket.ConnectionInfo.ClientIpAddress + Disconnect/r/n ;allSockets.Remove( socket);};//Recebe mensagens enviadas pelo cliente socket.OnMessage = message =>{textBox3.Text += socket.ConnectionInfo.ClientIpAddress + enviou uma mensagem: + message + /r/n;//Envia a mensagem recebida para todos os clientes allSockets.ToList().ForEach(s => s.Send(message));} }) ;}}}Resumir
O exemplo acima é o código de exemplo do WebSocket baseado em HTML5 apresentado pelo editor. Espero que seja útil para você. Se você tiver alguma dúvida, deixe-me uma mensagem e o editor responderá a tempo. Gostaria também de agradecer a todos pelo apoio ao site de artes marciais VeVb!