Azure Web PubSub hizmetinde olay işleyicisi
Olay işleyicisi gelen istemci olaylarını işler. Olay işleyicileri Azure portalı veya Azure CLI aracılığıyla hizmete kaydedilir ve yapılandırılır. bir istemci olayı tetiklendiğinde, hizmet olayı uygun olay işleyicisine gönderebilir. Web PubSub hizmeti artık olay işleyicisini sunucu tarafı olarak desteklemektedir ve bu da olay tetiklendiğinde hizmetin çağrılmak üzere genel olarak erişilebilen uç noktasını kullanıma sunar. Başka bir deyişle, bir web kancası işlevi görür.
Web PubSub hizmeti CloudEvents HTTP protokolunu kullanarak istemci olaylarını yukarı akış web kancasına teslim eder.
Her olay için hizmet, kayıtlı yukarı akış uç noktasına bir HTTP POST isteği formüle eder ve bir HTTP yanıtı bekler.
Hizmetten sunucuya gönderen veriler her zaman CloudEvents binary
biçimindedir.
Yukarı akış ve Doğrulama
Web kancası uç noktasını yapılandırdığınızda, URL bir URL şablonu tanımlamak için parametresini içerebilir {event}
. Hizmet, istemci isteği geldiğinde web kancası URL'sinin değerini dinamik olarak hesaplar. Örneğin, bir istek /client/hubs/chat
geldiğinde, hub chat
için yapılandırılmış bir olay işleyici URL'si deseni http://host.com/api/{event}
ile istemci bağlandığında, ilk olarak şu URL'ye POST olur: http://host.com/api/connect
. {event}
PubSub WebSocket istemcisi özel olaylar gönderdiğinde, olay işleyicisinin farklı yukarı akış uç noktalarına farklı olaylar göndermeye yardımcı olması parametresi yararlı olabilir. {event}
URL etki alanı adında parametresine izin verilmez.
Azure portalı veya CLI aracılığıyla olay işleyici web kancasını ayarlarken hizmet, yukarı akış web kancasını doğrulamak için CloudEvents Kötüye Kullanım Koruması'nı izler. Her kayıtlı yukarı akış web kancası URL'si bu mekanizma tarafından doğrulanır. WebHook-Request-Origin
İstek üst bilgisi hizmet etki alanı adına xxx.webpubsub.azure.com
ayarlanır ve yanıtın WebHook-Allowed-Origin
bu etki alanı adını veya *
içermesini bekler.
Doğrulama {event}
yapılırken parametresi olarak validate
çözümlenir. Örneğin, URL'yi http://host.com/api/{event}
olarak ayarlamaya çalışırken, hizmet bir isteği OLAN SEÇENEKLER'ihttp://host.com/api/validate
dener. Yalnızca yanıt geçerli olduğunda yapılandırma başarıyla ayarlanabilir.
Şimdilik WebHook-Request-Rate ve WebHook-Request-Callback'i desteklemiyoruz.
Hizmet ve web kancası arasında kimlik doğrulaması
Hizmet ve web kancası arasında kimlik doğrulaması yapmak için bu yöntemlerden herhangi birini kullanabilirsiniz.
- Anonim mod
- ile
?code=<code>
basit kimlik doğrulaması, yapılandırılan Web kancası URL'si aracılığıyla sorgu parametresi olarak sağlanır. - Microsoft Entra yetkilendirmesi. Daha fazla bilgi için bkz . İstemci olaylarında yönetilen kimlik kullanma.
Olay işleyicisini yapılandırma
Azure portalı aracılığıyla yapılandırma
Yeni bir hub'a olay işleyicisi ekleyebilir veya var olan bir hub'ı düzenleyebilirsiniz.
Yeni bir hub'da olay işleyicisi yapılandırmak için:
Azure portalında Azure Web PubSub hizmeti sayfanıza gidin.
Menüden Ayarlar'ı seçin.
Ekle'yi seçerek bir hub oluşturun ve sunucu tarafı web kancası URL'nizi yapılandırın. Not: Var olan bir hub'a olay işleyicisi eklemek için hub'ı ve ardından Düzenle'yi seçin.
Hub adınızı girin.
Çift İşleyicileri Yapılandır'ın altında Ekle'yi seçin.
Olay işleyicisi sayfasında aşağıdaki alanları yapılandırın: 1. URL Şablonu alanına sunucu web kancası URL'sini girin. 1. Abone olmak istediğiniz Sistem olaylarını seçin. 1. Abone olmak istediğiniz Kullanıcı olayları'nı seçin. 1. Yukarı akış isteklerinin kimliğini doğrulamak için Kimlik doğrulama yöntemi'ne tıklayın. 1. Onayla'yı seçin.
Hub'ı Yapılandır Ayarlar sayfasının üst kısmındaki Kaydet'i seçin.
Azure CLI aracılığıyla yapılandırma
Olay işleyicisi ayarlarını yapılandırmak için Azure CLI az webpubsub hub group komutlarını kullanın.
Komutlar | Tanım |
---|---|
create |
WebPubSub Hizmeti için hub ayarları oluşturun. |
delete |
WebPubSub Hizmeti için hub ayarlarını silin. |
list |
WebPubSub Hizmeti için tüm hub ayarlarını listeleyin. |
show |
WebPubSub Hizmeti için hub ayarlarını gösterin. |
update |
WebPubSub Hizmeti için hub ayarlarını güncelleştirin. |
Kaynak hub'ı MyHub
için iki web kancası URL'sini oluşturma örneği aşağıda verilmişti MyWebPubSub
:
az webpubsub hub create -n "MyWebPubSub" -g "MyResourceGroup" --hub-name "MyHub" --event-handler url-template="http://host.com" user-event-pattern="*" --event-handler url-template="http://host2.com" system-event="connected" system-event="disconnected" auth-type="ManagedIdentity" auth-resource="uri://myUri"
Sonraki adımlar
Kendi uygulamanızı oluşturmaya başlamak için şu kaynakları kullanın:
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin