SignalR bu real time vaqtda klient va server o’rtasida aloqani ushlab turuvchi kutubxona hisoblanadi


Download 15.86 Kb.
Sana05.02.2023
Hajmi15.86 Kb.
#1167176
Bog'liq
SignalR


SignalR
SignalR bu real time vaqtda klient va server o’rtasida aloqani ushlab turuvchi kutubxona hisoblanadi.
SignalR .NET platformasi tillari bilan yozilgan server tomoni kodidan mijoz tomoni JavaScript funksiyalarini chaqirish imkonini beruvchi funksionallikni yaratish uchun oddiy API taqdim etadi.
SignalR real vaqtda aloqa bilan ishlashni sezilarli darajada osonlashtiradi. Kutubxona barcha ulanishlarni qayta ishlaydi va avtomatik ravishda barcha ulangan mijozlarga yoki ba'zi maxsus mijozlarga xabarlarni yuboradi.
Aslida, SignalR kutubxonasi C# kodida ishlatiladigan server tomonidagi API va mijoz tomonidagi JavaScript kutubxonalaridan iborat.
SignalR ishlab chiquvchilarga ikkita modelni taqdim etadi: doimiy ulanishlar (Persistent Connection) va Hublar (Hubs).

Birinchi eng oddiy ko’rinishdan ko’rib chiqishni boshlaylik.



dotnet new web -o SignalR_App

Keyin proyekt uchun yangi Hubs papkasini qo’shamiz va u papkaga Hub larni joylab boramiz,
ChatHub.cs fayliga ushbu kodni yozamiz, bu yerdagi ths.Client.All.SendAsync() metodi hamma clientlarga bira vaqtda malumotni asinxronik tarzda uzatadi.
using Microsoft.AspNetCore.SignalR;

namespace SignalR_App.Hubs


{
public class ChatHub : Hub
{
public async Task Send(string message)
{
await this.Clients.All.SendAsync("Receive", message);
}
}
}

Keyingi qadamda buni Services ga va Middleware ga qo’shishimi kerak bo’ladi.


builder.Services.AddSignalR();

app.MapHub("/chat");


Endi agar bizga “/chat” buyruqi kelsa IEndpointBuilder clasi uni ChatHub ga yo’naltirib yuboradi.
Client qismini tuzish.
Download 15.86 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling