Maison > Article > interface Web > Un petit exemple de WebSocket implémenté en html5 (avec code)
Cet article vous apporte un petit exemple (avec code) de WebSocket implémenté en html5. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.
Code client :
<html> <head> <script> var socket; if ("WebSocket" in window) { var ws = new WebSocket("ws://127.0.0.1:8181"); socket = ws; ws.onopen = function() { console.log('连接成功'); }; ws.onmessage = function(evt) { var received_msg = evt.data; document.getElementById("showMes").value+=evt.data+"\n"; }; ws.onclose = function() { alert("断开了连接"); }; } else { alert("浏览器不支持WebSocket"); } function sendMes(){ var message=document.getElementById("name").value+":"+document.getElementById("mes").value; socket.send(message); } </script> </head> <body> <textarea rows="3" cols="30" id="showMes" style="width:300px;height:500px;"></textarea> <br/> <label>名称</label> <input type="text" id="name"/> <br/> <label>消息</label> <input type="text" id="mes"/> <button onclick="sendMes();">发送</button> </body> </html>
Code du serveur Winform :
Remarque : le package Fleck doit être introduit en premier
using System; using System.Collections.Generic; using System.Linq; using System.Windows.Forms; using Fleck; namespace socketService { public partial class Form1 : Form { public Form1() { InitializeComponent(); CheckForIllegalCrossThreadCalls = false; } private void Form1_Load(object sender, EventArgs e) { //保存所有连接 var allSockets = new List<IWebSocketConnection>(); //初始化服务端 var server = new WebSocketServer("ws://0.0.0.0:8181"); //开始监听 server.Start(socket => { //有客户端连接触发 socket.OnOpen = () => { textBox3.Text += socket.ConnectionInfo.ClientIpAddress + " 连接 \r\n"; allSockets.Add(socket); }; //有客户端断开触发 socket.OnClose = () => { textBox3.Text += socket.ConnectionInfo.ClientIpAddress + " 断开连接 \r\n"; allSockets.Remove(socket); }; //接收客户端发送的消息 socket.OnMessage = message => { textBox3.Text += socket.ConnectionInfo.ClientIpAddress + " 发送了消息:" + message + "\r\n"; //发送接收到的消息给所有客户端 allSockets.ToList().ForEach(s => s.Send(message)); }; }); } } }
Recommandations associées :
méthode php+html5 d'implémentation d'un salon de discussion basé sur websocket, html5websocket
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!