رمز مثال لـ WebSocket استنادًا إلى HTML5
رمز العميل:
<html><head><script>var مقبس;if (WebSocket في النافذة) {var ws = new WebSocket(ws://127.0.0.1:8181);socket = ws;ws.onopen = function() {console. log('الاتصال ناجح');};ws.onmessage = function(evt) {varreceive_msg = evt.data; document.getElementById(showMes).value+=evt.data+/n;};ws.on Close = function() {alert(disconnected);};} else {alert(المتصفح لا يدعم WebSocket);} تسجيل الدخول إلى الوظيفة (){ فار message=document.getElementById(name).value+:+document.getElementById(mes).value;socket.send(message);</script></head><body><textarearows=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=login();>إرسال</button></body></ أتش تي أم أل>
رمز خادم Winform:
ملحوظة: يجب تقديم حزمة Fleck أولاً
باستخدام النظام;باستخدام System.Collections.Generic;باستخدام System.Linq;باستخدام System.Windows.Forms;باستخدام Fleck;مقبس مساحة الاسمService{فئة جزئية عامة 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 =>{// يقوم اتصال العميل بتشغيل المقبس. OnOpen = () =>{textBox3.Text += مقبس.ConnectionInfo.ClientIpAddress + Connection/r/n;allSockets.Add(socket);};// يؤدي قطع اتصال العميل إلى تشغيل المقبس.OnClose = () =>{textBox3.Text += مقبس.ConnectionInfo.ClientIpAddress + Disconnect/r/n ;allSockets.Remove( المقبس)؛};// تلقي الرسائل المرسلة من قبل العميل المقبس.OnMessage = message =>{textBox3.Text += مقبس.ConnectionInfo.ClientIpAddress + أرسل رسالة: + message + /r/n;// أرسل الرسالة المستلمة إلى جميع العملاء allSockets.ToList().ForEach(s => s.Send(message));}; ;}}}تلخيص
ما ورد أعلاه هو مثال لرمز WebSocket المستند إلى HTML5 الذي قدمه المحرر وآمل أن يكون مفيدًا لك. إذا كانت لديك أي أسئلة، فيرجى ترك رسالة لي وسيقوم المحرر بالرد عليك في الوقت المناسب. أود أيضًا أن أشكر الجميع على دعمكم لموقع VeVb للفنون القتالية!