انتظر
ينطبق على: جميع مستويات إدارة واجهة برمجة التطبيقات
ينفذ نهج wait
النهج الفرعي المباشر بالتوازي، وينتظر تكتمل كل نُهجها الفرعية المباشرة أو واحد منها قبل اكتمالها. wait
يمكن أن يكون للنهج نهج فرعية فورية واحدة أو أكثر من النهج التالية: send-request
و cache-lookup-value
وchoose
.
إشعار
تعيين عناصر النهج والعناصر التابعة بالترتيب الوارد في بيان النهج. تعلم كيفية إعداد نُهج APIM أو تعديلها.
نهج السياسة
<wait for="all | any">
<!--Wait policy can contain send-request, cache-lookup-value,
and choose policies as child elements -->
</wait>
سمات
السمة | الوصف | مطلوبة | افتراضي |
---|---|---|---|
من أجل | تحديد ما إذا كان النهج wait ينتظر اكتمال جميع نهج الأطفال المباشرة أو نهج واحد فقط. القيم المسموح بها هي:- all - انتظر حتى يكتمل جميع نهج الأطفال المباشرة- any - انتظر حتى يكتمل أي نهج تابع فوري. بمجرد اكتمال أول نهج فرعي مباشر، يكتمل نهج wait ويتم إنهاء أي نهج فرعية أخرى مباشرة.يتم السماح بتعبيرات النهج. |
لا | all |
عناصر
قد تحتوي كعناصر فرعية على نهج send-request
وcache-lookup-value
وchoose
فقط.
الاستخدام
- أقسام النهج: الواردة والصادرة والخلفية
- نطاقات النهج: العمومية، ومساحة العمل، والمنتج، وواجهة برمجة التطبيقات، والتشغيل
- البوابات: الكلاسيكية، الإصدار 2، الاستهلاك، المستضافة ذاتيا، مساحة العمل
مثال
في المثال التالي، هناك نوعان choose
من السياسات كسياسات تابعة مباشرةwait
للسياسة. يتم تنفيذ كل نهج من هذه choose
النهج بشكل متوازٍ. يحاول كل نهج choose
استرداد قيمة مخزنة مؤقتاً. إذا كان هناك خطأ في ذاكرة التخزين المؤقت، يتم استدعاء خدمة الواجهة الخلفية لتوفير القيمة. في هذا المثال، لا يكتمل النهج wait
حتى تكتمل جميع نهجها الفرعية المباشرة، لأنه تم تعيين السمة for
على all
. في هذا المثال، تم التصريح عن متغيرات السياق (execute-branch-one
وvalue-one
وexecute-branch-two
وvalue-two
) خارج نطاق نهج المثال هذا.
<wait for="all">
<choose>
<when condition="@((bool)context.Variables["execute-branch-one="])">
<cache-lookup-value key="key-one" variable-name="value-one" />
<choose>
<when condition="@(!context.Variables.ContainsKey("value-one="))">
<send-request mode="new" response-variable-name="value-one">
<set-url>https://backend-one</set-url>
<set-method>GET</set-method>
</send-request>
</when>
</choose>
</when>
</choose>
<choose>
<when condition="@((bool)context.Variables["execute-branch-two="])">
<cache-lookup-value key="key-two" variable-name="value-two" />
<choose>
<when condition="@(!context.Variables.ContainsKey("value-two="))">
<send-request mode="new" response-variable-name="value-two">
<set-url>https://backend-two</set-url>
<set-method>GET</set-method>
</send-request>
</when>
</choose>
</when>
</choose>
</wait>
النهج ذات الصلة
المحتوى ذو الصلة
لمزيد من المعلومات حول العمل مع النُهج، راجع: