SignalR, tarayıcı tabanlı istemciler ve ASP.NET tabanlı sunucu bileşenlerinin iki taraflı çok adımlı konuşmalar yapmasına olanak tanıyan entegre bir istemci-sunucu kütüphanesidir. Başka bir deyişle, konuşma kısıtlama olmadan tek bir durumsuz istek/yanıt veri alışverişine olanak tanır; Açıkça kapatılana kadar devam edecek. Konuşma kalıcı bir bağlantı üzerinden gerçekleşir; bu da istemcinin sunucuya birden fazla mesaj göndermesine ve sunucunun buna göre yanıt vermesine olanak tanır; ayrıca sunucunun istemciye asenkron mesajlar göndermesine olanak tanır. AJax'a benzer ve mevcut teknolojiye dayanmaktadır. kendisi bir karmaşıktır. Genel olarak, SignalR istemci tarafı iletişimi sağlamak için Javascrip{filtering}t üzerinde uzun anket kullanır. WebSocket'lerin ortaya çıkışından sonra SignalR, WebSockets iletişimini de destekledi. Elbette, SignalR ayrıca sunucu ölçeklenebilirliğini artırmak için sunucu tarafı görev paralel işleme teknolojisini de kullanır. Tüm .NET Framework platformunu hedefliyor, sadece uygulama barındırmakla sınırlı değildir ve ayrıca Mono 2.10+ destekleyen çapraz platform açık kaynak projesidir; bu da onu Web API'leri için alternatif bir uygulama seçeneği yapar; ancak sunucu tarafı çevrimiçi işleme açısından ASP.NET MVC'nin Web API'sinden çok daha iyidir ve daha da önemlisi Web Formlarında kullanılabilir. Yukarıda demo eğitimi yer alıyor:
Websocket için kullandığımız sunucu Signalr, sonra Owin ile konsolda host ediyoruz!!!
OWIN'in tam adı .NET için Open Web Interface'dir.
Sadece isimden ayrıştırırsak şu bilgiyi elde edebiliriz: OWIN, .NET platformu için açık bir web arayüzüdür.
Peki web arayüzü arasındaki arayüz kim? Web uygulaması ile web sunucusu arasındaki arayüzdür ve OWIN, .NET web uygulaması ile web sunucusu arasındaki arayüzdür.
Neden böyle bir arayüze ihtiyacınız var? Çünkü. NET web uygulaması bir web sunucusunda çalışır ve .NET web uygulaması kullanıcının talebini web sunucusu üzerinden alıp yanıt içeriğini web sunucusu üzerinden kullanıcıya göndermelidir. Böyle bir arayüz olmadan, .NET web uygulaması çalıştığı belirli web sunucusuna bağlı olurdu, örneğin ASP.NET uygulama IIS'ye bağlı olurdu. Bu arayüzle, ASP.NET uygulama sadece bu soyut arayüze güvenmek zorunda kalır ve çalıştırdığı web sunucusunu umursamaz.
Bu nedenle, OWIN'in rolü, soyut arayüzler seti ekleyerek ayrılmaktır. NET web uygulaması ve web sunucusu, arayüzlerin önemini bir kez daha gösteriyor. Yazılım geliştirmede, her ayrıştırma büyük bir ilerleme adımıdır. Üç farklı tarayıcıyla açtık ve WebSocket protokolünün URL'sine sahiptik.
İlk tarayıcı: Bir kullanıcıyı test3'e 123 şifreyle kaydederiz ve giriş yaparız.
İkinci tarayıcı: Giriş yapmak için yönetici hesabını kullanıyoruz.
Üçüncü tarayıcı: Giriş yok, turist durumu.
Giriş yapmış hesapların mesaj göndermek için kullanılabileceğini, diğer kullanıcıların da mesaj alabileceğini (turistler de mesaj alabilir) bulduk.
Bir mesaj gönderin ve otomatik olarak diğer kişinin lakabını gösterin, ancak giriş yapan hesabı göstermeyin.
Son olarak, kaynak kodu ekleyelim:
Web kaynak kodu:
Turistler, bu gönderinin gizli içeriğini görmek isterseniz lütfen Yanıt
Signalr sunucusu kaynak kodu:
Turistler, bu gönderinin gizli içeriğini görmek isterseniz lütfen Yanıt
|