إرسال طلب في اتجاه واحد
ينطبق على: جميع مستويات إدارة واجهة برمجة التطبيقات
يرسل نهج send-one-way-request
طلب إلى محدد موقع المعلومات (URL) المحدد دون انتظار استجابة.
إشعار
تعيين عناصر النهج والعناصر التابعة بالترتيب الوارد في بيان النهج. تعلم كيفية إعداد نُهج APIM أو تعديلها.
نهج السياسة
<send-one-way-request mode="new | copy" timeout="time in seconds">
<set-url>request URL</set-url>
<set-method>...</set-method>
<set-header>...</set-header>
<set-body>...</set-body>
<authentication-certificate thumbprint="thumbprint" />
</send-one-way-request>
سمات
السمة | الوصف | مطلوبة | افتراضي |
---|---|---|---|
الوضع | تحديد ما إذا كان هذا new طلبا أو أحد copy العناوين والنص الأساسي في الطلب الحالي. في قسم النهج الصادر، mode=copy لا يقوم بتهيئة نص الطلب. يتم السماح بتعبيرات النهج. |
لا | new |
المهلة | الفاصل الزمني المهلة بالثواني قبل فشل الاستدعاء إلى عنوان URL. يتم السماح بتعبيرات النهج. | لا | 60 |
عناصر
العنصر | الوصف | مطلوب |
---|---|---|
set-url | عنوان URL للطلب. يتم السماح بتعبيرات النهج. | لا إذا كان mode=copy ؛ وإلا نعم. |
أسلوب التعيين | تعيين أسلوب الطلب. تعبيرات النهج غير مسموح بها. | لا إذا كان mode=copy ؛ وإلا نعم. |
تعيين العنوان | تعيين رأس في الطلب. استخدم عناصر متعددة set-header لرؤوس طلبات متعددة. |
لا |
تعيين النص الأساسي | تعيين نص الطلب. | لا |
شهادة المصادقة | الشهادة المراد استخدامها لمصادقة العميل، المحددة في سمة thumbprint . |
لا |
الوكيل | طلب التوجيه عبر وكيل HTTP. | لا |
الاستخدام
- أقسام النهج: واردة وصادرة وخلفية وعند الخطأ
- نطاقات النهج: العمومية، ومساحة العمل، والمنتج، وواجهة برمجة التطبيقات، والتشغيل
- البوابات: الكلاسيكية، الإصدار 2، الاستهلاك، المستضافة ذاتيا
مثال
يستخدم هذا المثال النهج send-one-way-request
لإرسال رسالة إلى غرفة محادثة Slack إذا كان رمز استجابة HTTP أكبر من أو يساوي 500. لمزيد من المعلومات حول هذا النموذج، راجع استخدام الخدمات الخارجية من خدمة Azure API Management.
<choose>
<when condition="@(context.Response.StatusCode >= 500)">
<send-one-way-request mode="new" timeout="20">
<set-url>https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX</set-url>
<set-method>POST</set-method>
<set-body>@{
return new JObject(
new JProperty("username","APIM Alert"),
new JProperty("icon_emoji", ":ghost:"),
new JProperty("text", String.Format("{0} {1}\nHost: {2}\n{3} {4}\n User: {5}",
context.Request.Method,
context.Request.Url.Path + context.Request.Url.QueryString,
context.Request.Url.Host,
context.Response.StatusCode,
context.Response.StatusReason,
context.User.Email
))
).ToString();
}</set-body>
</send-one-way-request>
</when>
</choose>
النهج ذات الصلة
المحتوى ذو الصلة
لمزيد من المعلومات حول العمل مع النُهج، راجع: