إرسال رسالة إلى موضوع Pub/Sub
ينطبق على: المطور | قسط
يوجه النهج publish-to-dapr
بوابة إدارة واجهة برمجة التطبيقات لإرسال رسالة إلى موضوع نشر/اشتراك في Dapr. ينجز النهج ذلك عن طريق إجراء طلب HTTP POST إلى http://localhost:3500/v1.0/publish/{{pubsub-name}}/{{topic}}
، واستبدال معلمات القالب وإضافة المحتوى المحدد في بيان النهج.
يفترض النهج أن وقت تشغيل Dapr يعمل في حاوية جانبية في نفس الجراب مثل البوابة. ينفذ وقت تشغيل Dapr دلالات Pub/Sub. تعرف على المزيد حول تكامل Dapr مع APIM.
إشعار
تعيين عناصر النهج والعناصر التابعة بالترتيب الوارد في بيان النهج. تعلم كيفية إعداد نُهج APIM أو تعديلها.
نهج السياسة
<publish-to-dapr pubsub-name="pubsub-name" topic="topic-name" ignore-error="false|true" response-variable-name="resp-var-name" timeout="in seconds" template="Liquid" content-type="application/json">
<!-- message content -->
</publish-to-dapr>
سمات
السمة | الوصف | مطلوبة | افتراضي |
---|---|---|---|
pubsub-name | اسم المكوّن PubSub الهدف. يعين إلى معلمة method-name في Dapr. إذا لم تكن موجودة، topic يجب أن تكون قيمة السمة في شكل pubsub-name/topic-name . يتم السماح بتعبيرات النهج. |
لا | بلا |
الموضوع | اسم الموضوع. يعين إلى معلمة topic في Dapr. يتم السماح بتعبيرات النهج. | نعم | غير متوفر |
تجاهل الخطأ | إذا تم تعيينه إلى true ، يرشد النهج إلى عدم تشغيل قسم "عند الخطأ" عند تلقي خطأ من وقت تشغيل Dapr. تعبيرات النهج غير مسموح بها. |
لا | false |
اسم متغير الاستجابة | اسم إدخال مجموعة المتغيرات لاستخدامه لتخزين الاستجابة من وقت تشغيل Dapr. تعبيرات النهج غير مسموح بها. | لا | بلا |
المهلة | الوقت (بالثواني) لانتظار وقت تشغيل Dapr للاستجابة. يمكن أن يتراوح من 1 إلى 240 ثانية. يتم السماح بتعبيرات النهج. | لا | 5 |
القالب | محرك القولبة لاستخدامه في تحويل محتوى الرسالة. "Liquid" هو القيمة الوحيدة المدعومة. | لا | بلا |
content-type | نوع محتوى الرسالة. "application/json" هي القيمة الوحيدة المدعومة. | لا | بلا |
الاستخدام
- أقسام النهج:الواردة.
- نطاقات النهج: العمومية، والمنتج، وواجهة برمجة التطبيقات، والتشغيل
- البوابات: ذاتية الاستضافة
ملاحظات الاستخدام
يجب تمكين دعم Dapr في البوابة المستضافة ذاتيا.
مثال
يوضح المثال التالي إرسال نص الطلب الحالي إلى الموضوع "new" لمكوّن Pub/Sub "orders". يتم تخزين الاستجابة المتلقاة من وقت تشغيل Dapr في إدخال "dapr-response" لمجموعة «المتغيرات» في عنصر السياق.
إذا لم يتمكن وقت تشغيل Dapr من تحديد موقع الموضوع الهدف، على سبيل المثال، واستجاب بخطأ، فسيتم تشغيل قسم "on-error". يتم إرجاع الاستجابة المتلقاة من وقت تشغيل Dapr إلى الطالب حرفياً. خلاف ذلك، يتم إرجاع الاستجابة 200 OK
الافتراضية.
القسم "backend" فارغ ولا يتم إعادة توجيه الطلب إلى الخلفية.
<policies>
<inbound>
<base />
<publish-to-dapr
pubsub-name="orders"
topic="new"
response-variable-name="dapr-response">
@(context.Request.Body.As<string>())
</publish-to-dapr>
</inbound>
<backend>
</backend>
<outbound>
<base />
</outbound>
<on-error>
<base />
<return-response response-variable-name="pubsub-response" />
</on-error>
</policies>
النهج ذات الصلة
المحتوى ذو الصلة
لمزيد من المعلومات حول العمل مع النُهج، راجع: