pelaksanaan interaksi data html5-websocket berdasarkan kemahiran tutorial calling_html5 kaedah jauh

WBOY
Lepaskan: 2016-05-16 15:50:57
asal
2141 orang telah melayarinya

Secara amnya, maklumat pengguna berdaftar dalam halaman web tradisional dihantar ke halaman untuk diproses melalui pos atau ajax. Selepas mencapai HTML5, kami mempunyai cara lain untuk berinteraksi dengan data melalui websocket mempunyai fleksibiliti dalam interaksi data yang dilakukan oleh halaman web tradisional tidak mempunyai. Selepas mewujudkan sambungan yang panjang melalui Websocket, pelayan boleh menghantar data terus kepada pelanggan, dan setiap interaksi data tidak perlu membawa sejumlah besar maklumat pengepala http Protokol websocket itu sendiri menyokong dua format data: teks dan aliran , melalui teks json dan javascript Interaksi adalah perkara yang sangat mudah Komunikasi melalui halaman web json dan Websockets adalah sangat mudah, tetapi untuk mencapai kemudahan ini, kami masih perlu melakukan beberapa pembungkusan yang mudah Nasib baik, komponen json yang sedia ada pada pelbagai platform adalah agak matang . Dengan menganalisis json Data dipetakan kepada kaedah yang sepadan pada bahagian pelayan untuk diproses.

Berikut adalah pendaftaran pengguna yang mudah untuk menggambarkan proses interaksi antara html5 menggunakan josn dan websocket Kerana ia dikapsulkan, ia sangat mudah digunakan.

HTML:

Fungsinya sangat mudah, hanya sambungkan ke perkhidmatan websocket dan serahkan maklumat pendaftaran Sudah tentu, untuk menjadi lebih fleksibel, kami akan membuka semula borang sambungan apabila sambungan dikesan ditutup adalah seperti berikut:

Salin kod
Kod adalah seperti berikut:

fungsi sambung () {
saluran = TcpChannel();
channel.Connected = function (evt) {
$('#dlgConnect').dialog('close'}; >channel.Disposed = function (evt) {
$( '#dlgConnect').dialog('open');
channel.Error = function (evt) {
alert(( evt);
};
saluran.Connect( $('#txtHost').val());


Sebab utamanya ialah TcpChannel dikapsulkan berdasarkan WebSocket Kod terperinci boleh dimuat turun untuk memahami .Selepas sambungan berjaya, anda akan memasukkan borang pendaftaran
.

Selepas mengisi beberapa maklumat pendaftaran, klik Daftar untuk menyerahkan maklumat kepada pelayan melalui WebSocket Kod JS yang berkaitan adalah seperti berikut:



Salin. kod

Kod adalah seperti berikut: var invokeregister = { url: 'Handler.OnRegister', parameter: { Nama Pengguna: '', E-mel: '', Kata Laluan: ''} } ;
daftar fungsi() {
$('#frmRegister').form('submit', {
onSubmit: function () {
var isValid = $( this).form(' validate');
if (isValid) {
invokeregister.parameters = $('#frmRegister').serializeObject();
channel.Send(invokeregister, function (result) {
makluman(hasil.data);
}
kembali palsu;
}; Lulus apabila data pengesahan berjaya TcpChannel hanya menghantar objek perihalan panggilan url ialah kaedah kelas yang akan dipanggil, dan paramter ialah parameter kaedah Parameter kedua ialah a pemprosesan panggilan balik

C#

Perkhidmatan ini berdasarkan pemprosesan lanjutan Beetle, jadi kodnya sangat mudah Kod kaedah logik untuk pendaftaran di atas adalah seperti berikut:




Salin. kod Kod adalah seperti berikut:



Pengendali kelas awam

{
rentetan awam OnRegister(rentetan Nama Pengguna, rentetan E-mel, rentetan Kata Laluan) { Console.WriteLine(Nama Pengguna); Console.WriteLine(E-mel); 🎜> kaedah sahaja Anda hanya perlu menentukan parameter yang berkaitan Pengawal sambungan mesej Beetle secara automatik akan menganalisis data json yang diserahkan oleh js untuk analisis dan mengikatnya kepada kaedah yang berkaitan untuk pelaksanaan Kod terperinci pengawal juga boleh diperolehi melalui memuat turun. Selepas logik ditulis, kami hanya perlu membuka perkhidmatan websocket yang berkaitan.





Salin kod


Kod tersebut adalah seperti berikut:
Program kelas:WebSocketJsonServer
{
statik lompang Utama(rentetan[] args)
{
Beetle.Controllers.Controller.Register(new Handler()); ("kumbang");
Pelayan program = new Program();
server.Open(8088); .Sleep(-1);
}
protected override void OnError(objek penghantar, ChannelErrorEventArgs e)
{
base.OnError(sender, e); Exception.Message);
}
protected override void OnConnected(objek penghantar, ChannelEventArgs e)
{
base.OnConnected(sender, e); disambungkan", e.Channel.EndPoint);
}
override dilindungi void OnDisposed(penghantar objek, ChannelDisposedEventArgs e)
{
base.OnDisposed(pengirim, e);
Console.WriteLine ("{0} dilupuskan", e.Channel.EndPoint);
}
}
Interaksi dan pemprosesan mesej objek websoket berdasarkan HTML5 telah selesai dan hanya sejumlah kecil kod diperlukan untuk melaksanakannya kod sumber untuk dilihat



WebSocket.Server.rar (641.79 kb)

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan