تعيين معلمة سلسلة الاستعلام

ينطبق على: جميع مستويات إدارة واجهة برمجة التطبيقات

يضيف النهج set-query-parameter قيمة معلمة سلسلة طلب البحث أو تستبدلها أو تحذفها. يمكن استخدامها لتمرير معلمات الاستعلام المتوقعة بواسطة خدمة الخلفية والتي تكون اختيارية أو غير موجودة أبدًا في الطلب.

إشعار

تعيين عناصر النهج والعناصر التابعة بالترتيب الوارد في بيان النهج. لمساعدتك في تكوين هذا النهج، يتيح المدخل محررًا موجهًا يستند إلى النموذج. تعلم كيفية إعداد نُهج APIM أو تعديلها.

نهج السياسة

<set-query-parameter name="param name" exists-action="override | skip | append | delete">
    <value>value</value> <!--for multiple parameters with the same name add additional value elements-->
</set-query-parameter>

سمات

الاسم ‏‏الوصف مطلوبة افتراضي
exists-action يحدد الإجراء الذي يجب اتخاذه عندما تكون معلمة الاستعلام محددة بالفعل. يجب أن تحتوي هذه السمة على إحدى القيم التالية.

- override - يستبدل قيمة المعلمة الموجودة.
- skip - لا يحل محل قيمة معلمة الاستعلام الموجودة.
- append - إلحاق القيمة بقيمة معلمة الاستعلام الموجودة.
- delete - يزيل معلمة الاستعلام من الطلب.

عند التعيين على override يؤدي إدراج إدخالات متعددة بنفس الاسم إلى تعيين معلمة الاستعلام وفقًا لجميع الإدخالات (والتي سيتم إدراجها عدة مرات)؛ سيتم تعيين القيم المدرجة فقط في النتيجة.

يتم السماح بتعبيرات النهج.
لا override
الاسم يحدد اسم معلمة الاستعلام ليتم تعيينها. يتم السماح بتعبيرات النهج. ‏‏نعم‬ غير متوفر

عناصر

Name ‏‏الوصف مطلوب
قيمة يحدد قيمة معلمة الاستعلام ليتم تعيينها. بالنسبة لمعلمات استعلام متعددة بنفس الاسم، أضف عناصر إضافية value . يتم السماح بتعبيرات النهج. ‏‏نعم‬

الاستخدام

الأمثلة

تعيين قيمة معلمة الاستعلام


<set-query-parameter name="api-key" exists-action="skip">
  <value>12345678901</value>
</set-query-parameter>

تعيين معلمة الاستعلام لإعادة توجيه السياق إلى الخلفية

يوضح هذا المثال كيفية تطبيق النهج على مستوى واجهة برمجة التطبيقات لتوفير معلومات السياق إلى خدمة في الخلفية.

<!-- Copy this snippet into the inbound element to forward a piece of context, product name in this example, to the backend service for logging or evaluation -->
<set-query-parameter name="x-product-name" exists-action="override">
  <value>@(context.Product.Name)</value>
</set-query-parameter>

لمزيد من المعلومات، راجع Policy expressions و Context variable.

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