SignalR je integrirana knjižnica za odjemalec-strežnik, ki omogoča uporabnikom brskalnika in strežniškim komponentam na osnovi ASP.NET izvajanje dvosmernih večstopenjskih pogovorov. Z drugimi besedami, pogovor omogoča eno brezstanjsko izmenjavo podatkov o zahtevah/odgovorih brez omejitev; Nadaljevala bo, dokler ne bo izrecno zaprta. Pogovor poteka preko stalne povezave, kar omogoča odjemalcu, da strežniku pošlje več sporočil in strežniku ustrezno odgovori, prav tako pa omogoča pošiljanje asinhronih sporočil odjemalcu. Podoben je AJax-u in temelji na obstoječi tehnologiji. sam po sebi je kompleks. Na splošno SignalR uporablja dolgo anketiranje Javascrip{filtering}t za dosego komunikacije na strani odjemalca. Po pojavu WebSockets je SignalR podpiral tudi WebSockets komunikacijo. Seveda SignalR uporablja tudi tehnologijo paralelnega procesiranja nalog na strežniški strani za izboljšanje skalabilnosti strežnika. Cilja na celotno platformo .NET Framework, ni omejen le na gostovanje aplikacij, je pa tudi večplatformski odprtokodni projekt, ki podpira Mono 2.10+, kar ga naredi za alternativno možnost implementacije spletnih API-jev, vendar je veliko boljši od spletnega API-ja ASP.NET MVC glede strežniške spletne obdelave, še pomembneje pa je, da ga je mogoče uporabljati na spletnih obrazcih. Zgoraj je demo vodič:
Strežnik, ki ga uporabljamo za websocket, je signalr, nato pa uporabljamo owin in ga gostimo na konzoli!!!
Polno ime OWIN je Open Web Interface for .NET.
Če razčlenjujemo samo iz imena, lahko dobimo naslednje informacije: OWIN je odprt spletni vmesnik za .NET platformo.
Kdo je torej vmesnik med spletnim vmesnikom? To je vmesnik med spletno aplikacijo in spletnim strežnikom, OWIN pa vmesnik med .NET spletno aplikacijo in spletnim strežnikom.
Zakaj potrebujete tak vmesnik? Ker. NET spletna aplikacija teče na spletnem strežniku, .NET spletna aplikacija pa mora prejeti uporabniško zahtevo prek spletnega strežnika in poslati vsebino odgovora uporabniku preko spletnega strežnika. Brez takšnega vmesnika bi bila .NET spletna aplikacija odvisna od specifičnega spletnega strežnika, na primer, ASP.NET bi aplikacija odvisna od IIS. S tem vmesnikom ASP.NET aplikacija potrebuje le ta abstraktni vmesnik in ji ni mar za spletni strežnik, ki ga poganja.
Zato je vloga OWIN v tem, da loči z uvedbo nabora abstraktnih vmesnikov. NET spletna aplikacija in spletni strežnik, kar znova dokazuje pomen vmesnikov. V razvoju programske opreme je vsaka ločitev velik korak naprej. Odprli smo ga v treh različnih brskalnikih in imeli smo URL protokola WebSocket.
Prvi brskalnik: Uporabnika registriramo pri test3 z geslom 123 in se prijavimo.
Drugi brskalnik: Za prijavo uporabljamo administratorski račun.
Tretji brskalnik: Brez prijave, status turista.
Ugotovili smo, da se prijavljeni računi lahko uporabljajo za pošiljanje sporočil, nato pa lahko drugi uporabniki prejemajo sporočila (tudi turisti lahko prejemajo sporočila)
Pošlji sporočilo in samodejno prikaže vzdevek druge osebe, ne pa prijavljenega računa.
Na koncu priložimo izvorno kodo:
Spletna izvorna koda:
Turisti, če želite videti skrito vsebino te objave, prosim Odgovoriti
Izvorna koda strežnika Signalr:
Turisti, če želite videti skrito vsebino te objave, prosim Odgovoriti
|