Το SignalR είναι μια ενσωματωμένη βιβλιοθήκη πελάτη-διακομιστή που επιτρέπει σε πελάτες που βασίζονται σε πρόγραμμα περιήγησης και σε στοιχεία διακομιστή που βασίζονται σε ASP.NET να διεξάγουν αμφίδρομες συνομιλίες πολλαπλών βημάτων. Με άλλα λόγια, η συνομιλία επιτρέπει μια ενιαία ανταλλαγή δεδομένων αιτήματος/απάντησης χωρίς κατάσταση χωρίς περιορισμούς. Θα συνεχιστεί μέχρι να κλείσει ρητά. Η συνομιλία πραγματοποιείται μέσω μόνιμης σύνδεσης, επιτρέποντας στον πελάτη να στέλνει πολλαπλά μηνύματα στον διακομιστή και να επιτρέπει στον διακομιστή να απαντά ανάλογα, και κυρίως, να επιτρέπει επίσης στον διακομιστή να στέλνει ασύγχρονα μηνύματα στον πελάτη. Είναι παρόμοιο με το AJax και βασίζεται στην υπάρχουσα τεχνολογία. από μόνη της είναι ένα σύμπλεγμα. Γενικά, το SignalR χρησιμοποιεί μακρά ψηφοφορία του Javascrip{filtering}t για να επιτύχει επικοινωνία από την πλευρά του πελάτη. Μετά την εμφάνιση των WebSockets, το SignalR υποστήριξε επίσης την επικοινωνία WebSockets. Φυσικά, το SignalR χρησιμοποιεί επίσης τεχνολογία παράλληλης επεξεργασίας εργασιών από την πλευρά του διακομιστή για τη βελτίωση της επεκτασιμότητας του διακομιστή. Στοχεύει σε ολόκληρη την πλατφόρμα .NET Framework, δεν περιορίζεται στη φιλοξενία εφαρμογών και είναι επίσης ένα έργο ανοιχτού κώδικα πολλαπλών πλατφορμών, που υποστηρίζει το Mono 2.10+, γεγονός που το καθιστά εναλλακτική επιλογή υλοποίησης για Web API, αλλά είναι πολύ καλύτερο από το Web API της ASP.NET MVC όσον αφορά την ηλεκτρονική επεξεργασία από την πλευρά του διακομιστή και το πιο σημαντικό, μπορεί να χρησιμοποιηθεί σε Φόρμες Ιστού. Παραπάνω είναι το σεμινάριο επίδειξης:
Ο διακομιστής που χρησιμοποιούμε για το websocket είναι ο signalr και στη συνέχεια χρησιμοποιούμε το owin και το φιλοξενούμε στην κονσόλα!!!
Το πλήρες όνομα του OWIN είναι Open Web Interface για .NET.
Εάν αναλύσουμε μόνο από το όνομα, μπορούμε να λάβουμε αυτές τις πληροφορίες: Το OWIN είναι μια ανοιχτή διεπαφή ιστού για την πλατφόρμα .NET.
Ποια είναι λοιπόν η διεπαφή μεταξύ της διεπαφής ιστού; Είναι η διεπαφή μεταξύ της εφαρμογής web και του διακομιστή web και το OWIN είναι η διεπαφή μεταξύ της εφαρμογής web .NET και του διακομιστή web.
Γιατί χρειάζεστε μια τέτοια διεπαφή; Επειδή. Η εφαρμογή web NET εκτελείται σε διακομιστή web και η εφαρμογή web .NET πρέπει να λάβει το αίτημα του χρήστη μέσω του διακομιστή web και να στείλει το περιεχόμενο απόκρισης στον χρήστη μέσω του διακομιστή web. Χωρίς μια τέτοια διεπαφή, η εφαρμογή web .NET θα εξαρτιόταν από τον συγκεκριμένο διακομιστή ιστού που εκτελούσε, για παράδειγμα ASP.NET η εφαρμογή θα εξαρτιόταν από τις υπηρεσίες IIS. Με αυτήν τη διεπαφή, ASP.NET εφαρμογή χρειάζεται μόνο να βασίζεται σε αυτήν την αφηρημένη διεπαφή και δεν ενδιαφέρεται για τον διακομιστή ιστού που εκτελεί.
Επομένως, ο ρόλος του OWIN είναι να αποσυνδεθεί εισάγοντας ένα σύνολο αφηρημένων διεπαφών. NET web application και web server, αποδεικνύοντας για άλλη μια φορά τη σημασία των διεπαφών. Στην ανάπτυξη λογισμικού, κάθε αποσύνδεση είναι ένα μεγάλο βήμα προς τα εμπρός. Το ανοίξαμε με 3 διαφορετικά προγράμματα περιήγησης και είχαμε τη διεύθυνση URL του πρωτοκόλλου WebSocket.
Πρώτο πρόγραμμα περιήγησης: Εγγράφουμε έναν χρήστη στο test3 με κωδικό πρόσβασης 123 και συνδεόμαστε.
Το δεύτερο πρόγραμμα περιήγησης: Χρησιμοποιούμε τον λογαριασμό διαχειριστή για να συνδεθούμε.
Τρίτο πρόγραμμα περιήγησης: Χωρίς σύνδεση, τουριστική κατάσταση.
Διαπιστώσαμε ότι οι συνδεδεμένοι λογαριασμοί μπορούν να χρησιμοποιηθούν για την αποστολή μηνυμάτων και, στη συνέχεια, άλλοι χρήστες μπορούν να λαμβάνουν μηνύματα (οι τουρίστες μπορούν επίσης να λαμβάνουν μηνύματα)
Στείλτε ένα μήνυμα και εμφανίστε αυτόματα το ψευδώνυμο του άλλου ατόμου, αλλά όχι τον συνδεδεμένο λογαριασμό.
Τέλος, ας επισυνάψουμε τον πηγαίο κώδικα:
Πηγαίος κώδικας Ιστού:
Τουρίστες, αν θέλετε να δείτε το κρυφό περιεχόμενο αυτής της ανάρτησης, παρακαλώ Απάντηση
Πηγαίος κώδικας διακομιστή σηματοδότησης:
Τουρίστες, αν θέλετε να δείτε το κρυφό περιεχόμενο αυτής της ανάρτησης, παρακαλώ Απάντηση
|