Metode mengimplementasikan ruang obrolan di halaman web tradisional adalah untuk mencapai informasi obrolan yang relevan dengan meminta server untuk mendapatkan informasi obrolan yang relevan setiap saat. Karena WebSocket memungkinkan koneksi untuk menjaga koneksi untuk interaksi data setelah menghubungkan server, server dapat secara aktif mengirim data yang sesuai ke klien. Untuk pemrosesan HTML5, Anda hanya perlu memproses data penerima dalam acara menerima WebSocket setelah koneksi selesai.
FungsiRuang obrolan sederhana memiliki fungsi berikut:
1) PendaftaranDaftar untuk menangani beberapa hal, yaitu setelah pendaftaran selesai, untuk mendapatkan semua daftar pengguna server saat ini, dan layanan akan mengirim pengguna yang saat ini terdaftar ke pengguna online lainnya.
2) Kirim informasiServer mengirimkan pesan yang saat ini diterima ke pengguna lain secara online
3) KeluarServer akan memberi tahu pengguna lain yang memutus pengguna yang terputus
Pratinjau fungsi ruang obrolan adalah sebagai berikut:
C#Layanan Kode SisiKode di server hanya perlu menentukan beberapa metode untuk beberapa fungsi, yaitu pendaftaran, mendapatkan pengguna lain dan mengirim informasi. Kode spesifiknya adalah sebagai berikut:
/// <summary> // copyright © Henryfan 2012 /// Email: [email protected] /// homepage: http://www.ikende.com /// createtime: 2012/7/7 21:45 21:45: 25 /// </summary> class handler {public long register (nama string) {tcpchannel channel = methodContext.current.channel; name); Saluran. .clientID;} ILIST PUBLIK <USERRE> () {TCPCHANNEL SALURAN = METODECONTEXT.CURRENT.CHANNEL; Saluran) hasil. ; ;
Hanya kode sederhana di atas yang diperlukan untuk menyelesaikan fungsi server ruang obrolan.
Override yang dilindungi void ovedisposed (pengirim objek, channeldisposdeventArgs e) {base.ondisposed (pengirim, e); Nama; this.server.getOnlines ()) {if (item! = e.channel) item.send (msg);}}}}Kode sisi layanan obrolan selesai.
Kode JavaScriptHal pertama yang harus dilakukan untuk kode HTML5 adalah terhubung ke server.
Function connect () {channel = new tcpchaannel (); (Hasil.Status == NULL || Hasil = Function (evt) {$ ('#dlgconnect'). ) {var item = getUser (result.data); .id) .remove ();} else if (result.type == 'sayPesan yang berbeda ditangani melalui jumlah kumpulan pemulihan yang diterima. kotak. Bantuan bantuan jQuery menjadi sangat sederhana.
Proses Panggilan Pendaftaran Pengguna:
Var callregister = {url: 'handler.register', parameter: {name: ''}}; nilai '); if (isValid) {connect ();} return false;});}Dapatkan proses daftar pengguna online:
var callist = {url: 'handler.list', parameter: {}}; (var i = 0; i <result.data.length; i ++) {var item = getUser (result.data [i]); );}Kirim Proses Pesan:
var callay = {url: 'handler.say', parameter: {content:} function () {calling.parameters.content = meditor.html (); $ ('#Content1') [0] .focus ();} MeringkaskanSetelah kode dienkapsulasi, pemrosesan WebSocket menjadi sangat sederhana.
Di atas adalah semua isi artikel ini.