"SignalR" yra integruota kliento-serverio biblioteka, leidžianti naršyklės klientams ir ASP.NET pagrįstiems serverio komponentams vesti dvipusius kelių žingsnių pokalbius. Kitaip tariant, pokalbis leidžia be apribojimų keistis vienos būsenos užklausos / atsakymo duomenimis; Jis tęsis tol, kol bus aiškiai uždarytas. Pokalbis vyksta nuolatiniu ryšiu, todėl klientas gali siųsti kelis pranešimus į serverį ir leisti serveriui atitinkamai atsakyti, o ypač leisti serveriui siųsti asinchroninius pranešimus klientui. Jis panašus į AJax ir pagrįstas esamomis technologijomis. pats yra kompleksas. Apskritai, "SignalR" naudoja ilgą "Javascrip{filtering}t" apklausą, kad pasiektų ryšį su klientu. Atsiradus "WebSockets", "SignalR" taip pat palaikė "WebSockets" ryšį. Žinoma, "SignalR" taip pat naudoja serverio užduočių lygiagrečiojo apdorojimo technologiją, kad pagerintų serverio mastelio keitimą. Jis skirtas visai .NET Framework platformai, neapsiriboja programų priegloba, taip pat yra kelių platformų atvirojo kodo projektas, palaikantis Mono 2.10+, todėl tai yra alternatyvi žiniatinklio API diegimo galimybė, tačiau ji yra daug geresnė nei ASP.NET MVC žiniatinklio API serverio internetinio apdorojimo požiūriu, o dar svarbiau, kad ją galima naudoti žiniatinklio formose. Aukščiau yra demonstracinė pamoka:
Serveris, kurį naudojame žiniatinklio lizdui, yra signalizatorius, tada naudojame owin ir talpiname jį konsolėje!!!
Visas OWIN pavadinimas yra Open Web Interface for .NET.
Jei analizuosime tik iš pavadinimo, galime gauti šią informaciją: OWIN yra atvira .NET platformos žiniatinklio sąsaja.
Taigi, kas yra sąsaja tarp žiniatinklio sąsajos? Tai sąsaja tarp žiniatinklio programos ir žiniatinklio serverio, o OWIN yra sąsaja tarp .NET žiniatinklio programos ir žiniatinklio serverio.
Kodėl jums reikia tokios sąsajos? Nes. NET žiniatinklio programa veikia žiniatinklio serveryje, o .NET žiniatinklio programa turi gauti vartotojo užklausą per žiniatinklio serverį ir siųsti atsakymo turinį vartotojui per žiniatinklio serverį. Be tokios sąsajos .NET žiniatinklio programa priklausytų nuo konkretaus žiniatinklio serverio, kurį ji veikia, pavyzdžiui, ASP.NET programa priklausytų nuo IIS. Naudojant šią sąsają, ASP.NET programa turi pasikliauti tik šia abstrakčia sąsaja ir jai nerūpi jos veikiantis žiniatinklio serveris.
Todėl OWIN vaidmuo yra atsieti įvedant abstrakčių sąsajų rinkinį. NET žiniatinklio programa ir žiniatinklio serveris, dar kartą parodant sąsajų svarbą. Kuriant programinę įrangą kiekvienas atsiejimas yra didelis žingsnis į priekį. Atidarėme jį naudodami 3 skirtingas naršykles ir turėjome "WebSocket" protokolo URL.
Pirmoji naršyklė: užregistruojame vartotoją test3 su slaptažodžiu 123 ir prisijungiame.
Antroji naršyklė: Prisijungimui naudojame administratoriaus paskyrą.
Trečioji naršyklė: Nėra prisijungimo, turisto statusas.
Mes nustatėme, kad prisijungusios paskyros gali būti naudojamos pranešimams siųsti, o tada kiti vartotojai gali gauti pranešimus (turistai taip pat gali gauti pranešimus)
Siųsti pranešimą ir automatiškai rodyti kito asmens slapyvardį, bet ne prisijungusį abonementą.
Galiausiai pridėkime šaltinio kodą:
Žiniatinklio šaltinio kodas:
Turistai, jei norite pamatyti paslėptą šio įrašo turinį, prašome Atsakyti
Signalizatoriaus serverio šaltinio kodas:
Turistai, jei norite pamatyti paslėptą šio įrašo turinį, prašome Atsakyti
|