إرسال طلب إلى خدمة

ينطبق على: المطور | بريميوم

يعين set-backend-service النهج عنوان URL الهدف للطلب الحالي إلى http://localhost:3500/v1.0/invoke/{app-id}[.{ns-name}]/method/{method-name}، واستبدال معلمات القالب بالقيم المحددة في بيان النهج.

يفترض النهج أن Dapr يعمل في حاوية جانبية في نفس الجراب مثل البوابة. عند تلقي الطلب، يعمل وقت تشغيل Dapr على تنفيذ اكتشاف الخدمة والاستدعاء الفعلي، بما في ذلك ترجمة البروتوكول المحتملة بين HTTP وgRPC، وإعادة المحاولات، والتتبع الموزع، ومعالجة الأخطاء. تعرف على المزيد حول تكامل Dapr مع APIM.

إشعار

تعيين عناصر النهج والعناصر التابعة بالترتيب الوارد في بيان النهج. تعلم كيفية إعداد نُهج APIM أو تعديلها.

نهج السياسة

<set-backend-service backend-id="dapr" dapr-app-id="app-id" dapr-method="method-name" dapr-namespace="ns-name" />

سمات

السمة ‏‏الوصف مطلوبة افتراضي
backend-id يجب تعيين إلى "dapr". ‏‏نعم‬ غير متوفر
dapr-app-id اسم الخدمة الصغيرة الهدف. يُستخدم لتشكيل المعلمة appId في Dapr. يتم السماح بتعبيرات النهج. ‏‏نعم‬ غير متوفر
dapr-method اسم الأسلوب أو URL لاستدعاء على الخدمة الصغيرة الهدف. يعين إلى معلمة method-name في Dapr. يتم السماح بتعبيرات النهج. ‏‏نعم‬ غير متوفر
dapr-namespace اسم مساحة الاسم التي توجد فيها الخدمة الصغيرة الهدف. يُستخدم لتشكيل المعلمة appId في Dapr. يتم السماح بتعبيرات النهج. لا ‏‫غير متاح

الاستخدام

ملاحظات الاستخدام

يجب تمكين دعم Dapr في البوابة المستضافة ذاتيا.

مثال

يوضح المثال التالي استدعاء الأسلوب المسمى "back" على microservice يسمى "echo". يعين النهج set-backend-service عنوان URL الوجهة إلى http://localhost:3500/v1.0/invoke/echo.echo-app/method/back. يرسل النهج forward-request الطلب إلى وقت تشغيل Dapr الذي يسلمه إلى الخدمة الصغيرة.

يتم عرض النهج forward-request هنا للتوضيح. عادةً ما يكون النهج "inherited" من النطاق العمومي عبر الكلمة الأساسية base.

<policies>
    <inbound>
        <base />
        <set-backend-service backend-id="dapr" dapr-app-id="echo" dapr-method="back" dapr-namespace="echo-app" />
    </inbound>
    <backend>
        <forward-request />
    </backend>
    <outbound>
        <base />
    </outbound>
    <on-error>
        <base />
    </on-error>
</policies>

لمزيد من المعلومات حول العمل مع النُهج، راجع: