SignalR este o bibliotecă integrată client-server care permite clienților bazați pe browser și componentelor serverului bazate pe ASP.NET să desfășoare conversații bidirecționale în mai mulți pași. Cu alte cuvinte, conversația permite un singur schimb de date cerere/răspuns fără stare, fără restricții; Va continua până când va fi închis explicit. Conversația are loc printr-o conexiune permanentă, permițând clientului să trimită mai multe mesaje serverului și să răspundă corespunzător, și, notabil, permițând serverului să trimită mesaje asincrone către client. Este similar cu AJax și se bazează pe tehnologie existentă. în sine este un complex. În general, SignalR folosește interogări lungi ale Javascrip{filtering}t pentru a obține comunicare pe partea clientului. După apariția WebSockets, SignalR a suportat și comunicarea WebSockets. Desigur, SignalR folosește și tehnologie de procesare paralelă a sarcinilor pe partea serverului pentru a îmbunătăți scalabilitatea serverului. Vizează întreaga platformă .NET Framework, nu se limitează la găzduirea aplicațiilor și este, de asemenea, un proiect open source cross-platform, care suportă Mono 2.10+, ceea ce îl face o opțiune alternativă de implementare pentru API-urile Web, dar este mult mai bun ASP.NET decât API-ul web al MVC în ceea ce privește procesarea online pe partea de server și, mai important, poate fi folosit pe Web Forms. Mai sus este tutorialul demo:
Serverul pe care îl folosim pentru websocket este Signalr, apoi folosim OWIN și îl găzduim pe consolă!!!
Numele complet al OWIN este Open Web Interface pentru .NET.
Dacă analizăm doar după nume, putem obține următoarea informație: OWIN este o interfață web deschisă pentru platforma .NET.
Deci, cine este interfața dintre interfața web? Este interfața dintre aplicația web și serverul web, iar OWIN este interfața dintre aplicația web .NET și serverul web.
De ce ai nevoie de o astfel de interfață? Pentru că. Aplicația web NET rulează pe un server web, iar aplicația web .NET trebuie să primească cererea utilizatorului prin serverul web și să trimită conținutul de răspuns utilizatorului prin intermediul serverului web. Fără o astfel de interfață, aplicația web .NET ar depinde de serverul web specific pe care îl rulează, de exemplu ASP.NET aplicația ar depinde de IIS. Cu această interfață, aplicația ASP.NET trebuie să se bazeze doar pe această interfață abstractă și nu îi pasă de serverul web pe care îl rulează.
Prin urmare, rolul OWIN este de a decupla prin introducerea unui set de interfețe abstracte. NET și serverul web, demonstrând din nou importanța interfețelor. În dezvoltarea software, fiecare decuplare este un pas mare înainte. L-am deschis cu 3 browsere diferite și aveam URL-ul protocolului WebSocket.
Primul browser: Înregistrăm un utilizator cu test3 cu parola 123 și ne conectăm.
Al doilea browser: Folosim contul de administrator pentru a ne autentifica.
Al treilea browser: Fără autentificare, statut turistic.
Am descoperit că conturile autentificate pot fi folosite pentru a trimite mesaje, iar apoi alți utilizatori pot primi mesaje (turiștii pot primi și ei mesaje)
Trimite un mesaj și afișează automat porecla celeilalte persoane, dar nu și contul înregistrat.
În final, să atașezăm codul sursă:
Cod sursă web:
Turiști, dacă vreți să vedeți conținutul ascuns al acestei postări, vă rog Răspunde
Codul sursă al serverului Signalr:
Turiști, dacă vreți să vedeți conținutul ascuns al acestei postări, vă rog Răspunde
|