تكوين معالج الأحداث في خدمة Azure Web PubSub
يعالج معالج الأحداث أحداث العميل الواردة. يتم تسجيل معالجات الأحداث وتكوينها في الخدمة من خلال مدخل Azure أو Azure CLI. عند تشغيل حدث عميل، يمكن للخدمة إرسال الحدث إلى معالج الأحداث المناسب. تدعم خدمة Web PubSub الآن معالج الأحداث على أنه من جانب الخادم، والذي يعرض نقطة النهاية التي يمكن الوصول إليها بشكل عام للخدمة لاستدعاءها عند تشغيل الحدث. وبعبارة أخرى، فإنه يعمل كإخطار على الويب.
تقدم خدمة Web PubSub أحداث العميل إلى خطاف الويب المصدر المكون باستخدام بروتوكول CloudEvents HTTP، مع ملحق CloudEvents لمعالج أحداث Azure Web PubSub.
إعدادات معالج الأحداث
يتصل العميل دائما بمركز، ويمكنك تكوين إعدادات معالج أحداث متعددة للمركز. ترتيب إعدادات معالج الأحداث مهم والإعداد السابق له أولوية أعلى. عند اتصال عميل وتشغيل حدث، يمر Web PubSub بمعالجات الأحداث المكونة بترتيب الأولوية ويفوز الأول المطابق. تعيين الخصائص التالية عند تكوين معالج الأحداث:
اسم الخاصية | الوصف |
---|---|
قالب Url | تعريف القالب الذي يستخدمه Web PubSub لتقييم عنوان URL لخطاف الويب المصدر. |
أحداث المستخدم | تعريف أحداث المستخدم التي يهتم بها إعداد معالج الأحداث الحالي. |
أحداث النظام | تعريف أحداث النظام التي يهتم بها إعداد معالج الأحداث الحالي. |
المصادقة | تعريف أسلوب المصادقة بين خدمة Web PubSub وخادم المصدر. |
حدث
تتضمن الأحداث أحداث المستخدم وأحداث النظام. أحداث النظام هي أحداث معرفة مسبقا يتم تشغيلها خلال عمر العميل. يتم تشغيل أحداث المستخدم عندما يرسل العميل البيانات، ويمكن تخصيص اسم حدث المستخدم باستخدام بروتوكولات العميل، هنا يحتوي على شرح مفصل.
نوع الحدث | القيم المدعومة |
---|---|
أحداث النظام | connect وconnected وdisconnected |
أحداث المستخدم | message ، أو اسم الحدث المخصص الذي يتبع بروتوكولات العميل |
قالب URL
يدعم قالب URL العديد من المعلمات التي يمكن تقييمها أثناء وقت التشغيل. باستخدام هذه الميزة، من السهل توجيه مراكز أو أحداث مختلفة إلى خوادم مصدر مختلفة بإعداد واحد. بناء جملة مرجع KeyVault مدعوم أيضا بحيث يمكن تخزين البيانات في Azure Key Vault بشكل آمن.
ملاحظة يجب ألا يحتوي اسم مجال URL على بناء جملة معلمة، على سبيل المثال، http://{hub}.com
ليس قالب URL صالحا.
المعلمات المدعومة | بناء الجملة | الوصف | العينات |
---|---|---|---|
معلمة المركز | {hub} |
القيمة هي المركز الذي يتصل به العميل. | عندما يتصل عميل ب client/hubs/chat ، يتم تقييم قالب http://host.com/api/{hub} URL إلى http://host.com/api/chat لأنه بالنسبة لهذا العميل، يكون المركز هو chat . |
معلمة الحدث | {event} |
قيمة الحدث الذي تم تشغيله. event يتم سرد القيم هنا. قيمة الحدث لطلبات الحماية من إساءة الاستخدام كما هو validate موضح هنا. |
إذا كان هناك قالب http://host.com/api/{hub}/{event} URL تم تكوينه للحدث connect ، فعندما يتصل عميل ب client/hubs/chat ، يبدأ Web PubSub طلب POST إلى عنوان URL http://host.com/api/chat/connect الذي تم تقييمه عند اتصال العميل، حيث بالنسبة لحدث العميل هذا، يكون hub والحدث chat الذي يقوم بتشغيل إعداد معالج الأحداث هذا هو connect . |
معلمة مرجع KeyVault | {@Microsoft.KeyVault(SecretUri=<secretUri>)} |
يجب أن يكون SecretUri هو URI لمستوى البيانات الكامل للبيانات السرية في المخزن، بما في ذلك اختياريا إصدارا، على سبيل المثال، https://myvault.vault.azure.net/secrets/mysecret/ أو https://myvault.vault.azure.net/secrets/mysecret/ec96f02080254f109c51a1f14cdb1931 . عند استخدام مرجع KeyVault، تحتاج أيضا إلى تكوين المصادقة بين خدمة Web PubSub وخدمة KeyVault، تحقق هنا للحصول على خطوات مفصلة. |
@Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/) |
المصادقة بين الخدمة والإخطار على الويب
يمكنك استخدام أي من هذه الطرق للمصادقة بين الخدمة والإخطار على الويب.
- الوضع المجهول
- يتم توفير مصادقة بسيطة مع
?code=<code>
من خلال عنوان URL Webhook المكون كمعلمة استعلام. - تخويل Microsoft Entra. لمزيد من المعلومات، راجع استخدام هوية مدارة في أحداث العميل.
المصدر والتحقق من الصحة
عند إعداد خطاف الويب لمعالج الأحداث من خلال مدخل Microsoft Azure أو CLI، تتبع الخدمة CloudEvents Abuse Protection للتحقق من صحة خطاف الويب المصدر. تتحقق هذه الآلية من صحة كل عنوان URL مسجل للإخطار على الويب المصدر. WebHook-Request-Origin
يتم تعيين عنوان الطلب إلى اسم xxx.webpubsub.azure.com
مجال الخدمة ، ويتوقع أن تحتوي الاستجابة على عنوان WebHook-Allowed-Origin
يحتوي على اسم المجال هذا أو *
.
عند إجراء التحقق من الصحة، يتم حل المعلمة {event}
إلى validate
. على سبيل المثال، عند محاولة تعيين عنوان URL إلى http://host.com/api/{event}
، تحاول الخدمة خيارات طلب إلى http://host.com/api/validate
. وفقط عندما تكون الاستجابة صالحة، يمكن تعيين التكوين بنجاح.
في الوقت الحالي، لا ندعم WebHook-Request-Rate وWebHook-Request-Callback.
قم بتكوين معالج الأحداث
التكوين من خلال مدخل Microsoft Azure
يمكنك إضافة معالج أحداث إلى مركز جديد أو تحرير مركز موجود.
لتكوين معالج أحداث في مركز جديد:
انتقل إلى صفحة خدمة Azure Web PubSub في مدخل Microsoft Azure.
حدد الإعدادات من القائمة.
حدد Add لإنشاء مركز وتكوين عنوان URL لخطاف الويب من جانب الخادم. ملاحظة: لإضافة معالج أحداث إلى مركز موجود، حدد المركز وحدد تحرير.
أدخل اسم المركز الخاص بك.
حدد Add ضمن Configure Even Handlers.
في صفحة معالج الأحداث، قم بتكوين الحقول التالية: 1. أدخل عنوان URL للإخطار على الويب للخادم في حقل قالب URL. 1. حدد أحداث النظام التي تريد الاشتراك فيها. 1. حدد أحداث المستخدم التي تريد الاشتراك فيها. 1. حدد Authentication method لمصادقة طلبات المصدر. 1. حدد تأكيد.
حدد Save في أعلى صفحة Configure Hub Settings .
التكوين من خلال Azure CLI
استخدم أوامر مجموعة مركز Azure CLI az webpubsub لتكوين إعدادات معالج الأحداث.
الأوامر | الوصف |
---|---|
create |
إنشاء إعدادات المركز لخدمة WebPubSub. |
delete |
حذف إعدادات المركز لخدمة WebPubSub. |
list |
سرد كافة إعدادات المركز لخدمة WebPubSub. |
show |
إظهار إعدادات المركز لخدمة WebPubSub. |
update |
تحديث إعدادات المركز لخدمة WebPubSub. |
فيما يلي مثال على إنشاء عنواني URL لخطاف الويب لمركز MyHub
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"
الخطوات التالية
استخدم هذه الموارد لبدء إنشاء التطبيق الخاص بك: