ملاحظة
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على: جميع مستويات إدارة واجهة برمجة التطبيقات
في هذا البرنامج التعليمي، يمكنك التعرف على تكوين النهج لحماية أو تحويل واجهة برمجة التطبيقات الخاصة بك. النهج هي مجموعة من العبارات التي يتم تشغيلها بشكل تسلسلي بناء على طلب أو استجابة واجهة برمجة التطبيقات التي تعدل سلوك واجهة برمجة التطبيقات.
تلميح
يمكن لفرق واجهة برمجة التطبيقات استخدام هذه الميزة في مساحات العمل. توفر مساحات العمل وصولا إداريا معزولا إلى واجهات برمجة التطبيقات وبيئات وقت تشغيل واجهة برمجة التطبيقات الخاصة بها.
على سبيل المثال، قد تحتاج إلى تعيين عنوان استجابة مخصص. أو، قم بحماية واجهة برمجة التطبيقات الخلفية عن طريق تكوين نهج حد المعدل، بحيث لا يتم الإفراط في استخدام واجهة برمجة التطبيقات من قبل المطورين. هذه الأمثلة هي مقدمة بسيطة لنهج APIM. لمزيد من خيارات النهج، راجع نُهج API Management.
ملاحظة
بشكل افتراضي، تكوّن API Management نهج forward-request
عموميًا. نهج forward-request
مطلوب للبوابة لإكمال طلب إلى إحدى خدمات الخلفية.
في هذا البرنامج التعليمي، تتعلم كيفية:
- تحويل واجهة برمجة تطبيقات لتعيين عنوان استجابة مخصص
- حماية واجهة برمجة تطبيقات بإضافة سياسة تحديد المعدّل (التقييد)
- اختبار التحويلات
- التعرف على Azure API Management terminology.
- استيعاب concept of policies in Azure API Management.
- أكمل التشغيل السريع التالي:إنشاء مثيل لـ Azure API Management. في هذا البرنامج التعليمي، نوصي باستخدام أحد المستويات الكلاسيكية أو v2، على سبيل المثال، مستوى المطور أو المستوى الأساسي v2. لا يدعم مستوى الاستهلاك جميع النهج المستخدمة في هذا البرنامج التعليمي.
- كما يلزم إتمام البرنامج التعليمي التالي: استيراد ونشر واجهة برمجة التطبيقات الأولى الخاصة بك.
في مدخل Microsoft Azure، ابحث عن خدمات APIM وحددها:
في صفحة خدمات إدارة واجهة برمجة التطبيقات ، حدد مثيل إدارة واجهة برمجة التطبيقات:
للاطلاع على الاستجابة الأصلية:
- في مثيل خدمة APIM، حدد واجهات برمجة التطبيقات.
- حدد Swagger Petstore من قائمة واجهة برمجة التطبيقات الخاصة بك.
- حدد علامة التبويب اختبار، في أعلى الشاشة.
- حدد GET للبحث عن الأليفة حسب عملية الحالة، وحدد اختياريا قيمة مختلفة لمعلمة الحالةQuery. حدد إرسال.
ينبغي أن تتشابه الاستجابة الأصلية لواجهة برمجة التطبيقات مع الاستجابة التالية:
تتضمن APIM العديد من نهج التحويل التي يمكنك استخدامها لتعديل حمولات الطلب أو الاستجابة أو الرؤوس أو رموز الحالة. في هذا المثال، يمكنك تعيين عنوان استجابة مخصص في استجابة واجهة برمجة التطبيقات.
يوضح لك هذا القسم كيفية تكوين عنوان استجابة مخصص باستخدام النهج set-header
. هنا يمكنك استخدام محرر نهج يستند إلى نموذج يبسط تكوين النهج.
حدد Swagger Petstore>Design>All operations.
في قسم معالجة الوارد، حدد + إضافة نهج.
في نافذة إضافة نهج وارد، حدد تعيين العناوين.
لتكوين نهج تعيين الرؤوس، قم بما يلي:
- ضمن الاسم، أدخل مخصص.
- ضمن القيمة، حدد + إضافة قيمة. أدخل "My custom value".
- حدد حفظ.
بعد التكوين، يظهر عنصر نهج رأس المجموعة في قسم المعالجة الصادرة.
يوضح هذا القسم كيفية إضافة حماية إلى واجهة برمجة تطبيقات الخلفية عن طريق تكوين حدود المعدل، حتى لا يفرط المطوّرون في استخدام واجهة برمجة التطبيقات. يوضح هذا المثال كيفية تكوين النهج rate-limit-by-key
باستخدام محرر التعليمات البرمجية. في هذا المثال، يتم تعيين الحد إلى ثلاثة استدعاءات لكل 15 ثانية. وبعد مرور 15 ثانية، يمكن للمطور إعادة محاولة الاتصال بواجهة برمجة التطبيقات.
ملاحظة
هذا النهج غير مدعوم في مستوى الاستهلاك.
حدد Swagger Petstore>Design>All operations.
في قسم معالجة الوارد، حدد أيقونة محرر التعليمات البرمجية (</>).
ضَع المؤشر داخل العنصر
<inbound>
على سطر فارغ. ثم حدد إظهار القصاصات البرمجية في الركن العلوي الأيمن من الشاشة.في النافذة السفلى، ضمن الوصول إلى نُهج التقييد، حدد معدل استدعاءات الحد لكل مفتاح.
يُضاف العنصر
<rate-limit-by-key />
عند المؤشر.عدّل أيقونة
<rate-limit-by-key />
لديك في العنصر<inbound>
إلى التعليمة البرمجية التالية. ثم حدد حفظ.<rate-limit-by-key calls="3" renewal-period="15" counter-key="@(context.Subscription.Id)" />
عند هذه المرحلة، إذا نظرت إلى التعليمة البرمجية في محرر التعليمات البرمجية، ستبدو نُهجك مثل التعليمة البرمجية التالية:
<policies>
<inbound>
<rate-limit calls="3" renewal-period="15" counter-key="@(context.Subscription.Id)" />
<base />
</inbound>
<outbound>
<set-header name="Custom" exists-action="override">
<value>"My custom value"</value>
</set-header>
<base />
</outbound>
<on-error>
<base />
</on-error>
</policies>
يختبر باقي هذا القسم تحويلات السياسة التي قمت بتعيينها في هذه المقالة.
حدد Swagger Petstore>Test.
حدد GET للبحث عن الأليفة حسب عملية الحالة، وحدد اختياريا قيمة مختلفة لمعلمة الحالةQuery. حدد إرسال.
كما ترى، تتم إضافة عنوان الاستجابة المخصص:
حدد Swagger Petstore>Test.
حدد عملية GET للبحث عن الأليفة حسب الحالة. حدد إرسال عدة مرات في صف.
بعد إرسال عدد كبير جدا من الطلبات في الفترة التي تم تكوينها، تحصل على استجابة طلبات كثيرة جدا 429.
انتظر لمدة 15 ثانية أو أكثر ثم حدد إرسال مجددًا. هذه المرة يجب أن تحصل على استجابة 200 OK .
احصل على مساعدة الذكاء الاصطناعي من Copilot لإنشاء تعريفات نهج APIM وتحريرها. باستخدام Copilot، قم بإنشاء وتحديث النهج التي تطابق متطلباتك المحددة دون الحاجة إلى معرفة بناء جملة XML، والحصول على تفسيرات للنهج الحالية. يمكن أن يساعدك Copilot أيضا في ترجمة النهج التي ربما تكون قد قمت بتكوينها في حلول إدارة واجهة برمجة التطبيقات الأخرى.
- Microsoft Copilot في Azure - يقدم مساعدة تأليف النهج مع مطالبات اللغة الطبيعية في مدخل Microsoft Azure. تأليف النهج في محرر نهج APIM، واطلب من Copilot شرح أقسام النهج.
- GitHub Copilot ل Azure في VS Code - يوفر مساعدة تأليف النهج في Visual Studio Code، وتسريع تكوين النهج عند استخدام ملحق إدارة واجهة برمجة تطبيقات Azure ل Visual Studio Code. مطالبة Copilot Chat أو Copilot Edits (معاينة) بلغة طبيعية لإنشاء تعريفات النهج وتحسينها في مكانها.
مثال المطالبة:
Generate a policy that adds an Authorization header to the request with a Bearer token.
يتم تشغيل Copilot بواسطة الذكاء الاصطناعي، لذلك من الممكن حدوث مفاجآت وأخطاء. لمزيد من المعلومات، راجع الأسئلة المتداولة حول استخدام Copilot العام.
في هذا البرنامج التعليمي، نتعلم طريقة القيام بما يأتي:
- تحويل واجهة برمجة تطبيقات لتعيين عنوان استجابة مخصص
- حماية واجهة برمجة تطبيقات بإضافة سياسة تحديد المعدّل (التقييد)
- اختبار التحويلات
تقدم إلى البرنامج التعليمي الآتي: