أنت تعرض مستندات Apigee Edge.
انتقل إلى
مستندات Apigee X. معلومات
بصفتك مطوِّر تطبيقات في Apigee Edge، فإن أنشطة التطوير الأساسية التي تتّبعها تتضمن إعداد الخوادم الوكيلة لواجهات برمجة التطبيقات التي تعمل كخوادم وكيل لواجهات برمجة التطبيقات أو خدمات الخلفية. هذا المستند عبارة عن مرجع يضم جميع عناصر الإعداد المتاحة لك عند إنشاء خوادم وكيلة لواجهة برمجة التطبيقات.
إذا كنت تتعلّم كيفية إنشاء خوادم وكيلة لواجهة برمجة التطبيقات، من المستحسن أن تبدأ بالموضوع. إنشاء واجهة برمجة تطبيقات بسيطة الخادم الوكيل.
في ما يلي أكثر الطرق شيوعًا لتعديل إعدادات الخادم الوكيل:
- استخدام محرّر XML في واجهة مستخدم Edge
- تنزيل التهيئة وتعديلها محليًا، كما هو موضح في الدليل المحلي تطوير عمليات ضبط الخادم الوكيل
التطوير المحلي لإعدادات الخادم الوكيل
يمكنك تنزيل عمليات ضبط الخادم الوكيل حتى تتمكّن من تعديلها على جهاز محلي. فعندما بعد الانتهاء، يمكنك تحميل النتائج على Edge. تتيح لك هذه الطريقة دمج الخادم الوكيل الإعدادات في التحكم في المصدر وتحديد الإصدارات ومهام سير العمل المشتركة الأخرى. بالإضافة إلى ذلك، من خلال تعمل على تهيئة خادم وكيل محليًا، يمكنك استخدام محرر XML الخاص بك والتحقق من
يصف هذا القسم كيفية استخدام واجهة المستخدم لتنزيل تهيئة حالية للخادم الوكيل، وتعديلها،
ثم تحميله مرة أخرى إلى Edge ليتم نشره. يمكنك أيضًا استخدام
أداة واجهة برمجة التطبيقات API
لتنزيل إعداد خادم وكيل جديد ونشره (باستخدام fetchproxy
deployproxy
أوامر، على التوالي.)
لتعديل إعدادات خادم وكيل محليًا باستخدام واجهة المستخدم:
- نزِّل الإعدادات الحالية للخادم الوكيل في واجهة مستخدم Edge. (في الخوادم الوكيلة لواجهة برمجة التطبيقات عرض، اختر المشروع > تنزيل النسخة السابقة).
- على جهازك المحلي، أنشئ دليلاً جديدًا ووسِّع ملف ZIP الذي تم تنزيله إلى
بها.
لتوسيع ملف ZIP، يمكنك استخدام أداة مساعدة مثل
unzip
، كما يلي مثال يوضح:mkdir myappdir
unzip ./my-app_app_rev3_2019_04_20.zip -d myappdir
يجب أن يكون المحتوى الموسّع لملف ZIP مشابهًا للبنية الموضحة في بنية الخادم الوكيل لواجهة برمجة التطبيقات
- عدِّل الملفات المصدر حسب الضرورة. الحصول على وصف للملفات المصدر في خادم وكيل
الإعداد، يُرجى الاطّلاع على
ملفات التهيئة
بنية دليل الخادم الوكيل لواجهة برمجة التطبيقات.
على سبيل المثال، لتفعيل مراقبة الصحة في الخادم الوكيل لواجهة برمجة التطبيقات، يمكنك تعديل ملف إعداد TargetEndpoint في دليل
/apiproxy/targets/
. الملف الافتراضي في هذا الدليل هوdefault.xml
، ولكن قد تكون هناك ملفات بأسماء مختلفة في حال استخدامك الأهداف المشروطة.في هذه الحالة، إذا لم يكن ملف إعداد TargetEndpoint ودليله موجودين، وإنشائها.
- بعد الانتهاء من تعديل ملفات إعداد الخادم الوكيل، تأكَّد من حفظ التغييرات.
- إلى الدليل الجديد الذي أنشأته عند توسيع ملفات ZIP (جذر
ملفات الإعداد الموسّعة).
على سبيل المثال، في حال توسيع الملفات في دليل
/myappdir
، يمكنك التغيير إلى هذا الدليل، كما يبيِّن المثال التالي:cd myappdir
يجب الانتقال إلى هذا الدليل قبل إعادة أرشفة ملفات إعداد الخادم الوكيل. لأنك لا تريد تضمين الدليل
/myappdir
في ملف ZIP. يجب أن يكون دليل المستوى الأعلى في ملف ZIP هو/apiproxy
. - عليك إعادة أرشفة ملفات إعداد الخادم الوكيل، بما في ذلك الملفات الجديدة أو التي تم تغييرها. يمكنك استخدام
مثل
zip
، كما يبيِّن المثال التالي:zip my-new-proxy.zip -r .
يجب أن يكون دليل المستوى الأعلى في ملف ZIP هو
/apiproxy
.وليست هناك أي متطلبات خاصة لاسم ملف ZIP. على سبيل المثال، لا تحتاج إلى زيادة رقم النسخة السابقة أو تحديد التاريخ في اسم الملف، ولكن يمكن إجراء ذلك مفيدة لتصحيح الأخطاء أو التحكم في المصدر.
تزيد Edge من رقم النسخة السابقة لإعدادات الخادم الوكيل الجديدة نيابةً عنك عند التحميل. بها.
- حمِّل إعدادات الخادم الوكيل الجديدة باستخدام واجهة مستخدم Edge. (في الخوادم الوكيلة لواجهة برمجة التطبيقات
عرض، اختر المشروع > تحميل نسخة جديدة).
إذا ظهرت لك رسالة خطأ مثل Bundle is invalid. Empty bundle.، تأكَّد من دليل المستوى الأعلى لملف ZIP هو
/apiproxy
. إذا لم يكن الأمر كذلك، فأعد أرشفة ملفات إعداد الخادم الوكيل من جذر الدليل الموسّع.بعد تحميل إعدادات الخادم الوكيل الجديدة، تزيد Edge من رقم المراجعة يعرضه في طريقة عرض ملخص النُسخ السابقة.
لا ينشر Edge النسخة الجديدة نيابة عنك بعد تحميلها باستخدام واجهة المستخدم.
- انشر مراجعتك الجديدة.
لمزيد من المعلومات، يُرجى مراجعة دليل تعليمي: كيفية تنزيل خادم وكيل باستخدام واجهة المستخدم وواجهة برمجة تطبيقات الإدارة في منتدى Apigee:
بنية الخادم الوكيل لواجهة برمجة التطبيقات
يتكون الخادم الوكيل لواجهة برمجة التطبيقات من الإعدادات التالية:
الإعداد الأساسي | إعدادات الضبط الأساسية للخادم الوكيل لواجهة برمجة التطبيقات. راجِع القاعدة الإعدادات. |
إعداد نقطة نهاية الخادم الوكيل | إعدادات اتصال HTTP الوارد (من طلب التطبيقات إلى Apigee Edge)، اطلب ومسارات الردود ومرفقات السياسة راجِع ProxyEndpoint. |
ضبط نقطة النهاية المستهدفة | إعدادات اتصال HTTP الصادر (من Apigee Edge إلى خدمة الخلفية) وتدفقات الطلبات والاستجابة، ومرفقات السياسة. راجِع TargetEndpoint. |
زهور | مسارات الطلب والاستجابة لـ ProxyEndpoint وTargetEndpoint على السياسات التي يمكن مرفق. راجِع التدفق. |
السياسات | ملفات إعداد بتنسيق XML تتوافق مع مخططات سياسة Apigee Edge. عرض السياسات: |
المراجع | النصوص البرمجية وملفات JAR وملفات WebRTC المشار إليها من خلال السياسات لتنفيذ منطق مخصص. عرض الموارد: |
بنية دليل خادم وكيل واجهة برمجة التطبيقات والمحتوى
يتم تحديد المكوّنات في الجدول أعلاه من خلال ملفات الإعداد في ما يلي: بنية الدليل:
ملفات الإعداد والدليل بنية خادم وكيل واجهة برمجة التطبيقات
يشرح هذا القسم ملفات الإعداد وبنية الدليل لخادم وكيل واجهة برمجة التطبيقات.
الإعداد الأساسي
/apiproxy/weatherapi.xml
الإعداد الأساسي لخادم وكيل واجهة برمجة التطبيقات الذي يحدِّد اسم الخادم الوكيل لواجهة برمجة التطبيقات الاسم أن تكون فريدة داخل المؤسسة.
نموذج الضبط:
<APIProxy name="weatherapi"> </APIProxy>
عناصر الإعداد الأساسية
الاسم | الوصف | تلقائي | مطلوب؟ |
---|---|---|---|
APIProxy |
|||
name |
اسم الخادم الوكيل لواجهة برمجة التطبيقات، والذي يجب أن يكون فريدًا داخل مؤسسة الشخصيات
يُسمح لك باستخدامه في الاسم على ما يلي:
A-Za-z0-9_- |
لا ينطبق | نعم |
revision |
رقم النسخة السابقة لإعداد الخادم الوكيل لواجهة برمجة التطبيقات. لا تحتاج إلى تعيين رقم النسخة السابقة، نظرًا لأن Apigee Edge تتتبّع تلقائيًا النسخة الحالية من واجهة برمجة التطبيقات الخادم الوكيل. | لا ينطبق | لا |
ConfigurationVersion |
إصدار مخطط ضبط الخادم الوكيل لواجهة برمجة التطبيقات الذي يتوافق معه الخادم الوكيل لواجهة برمجة التطبيقات هذا تشير رسالة الأشكال البيانية هي القيمة المسموح بها فقط حاليًا هيMajorVersion 4 وsmallVersion 0. وقد يكون هذا الإعداد في المستقبل لتمكين تطور تنسيق خادم وكيل واجهة برمجة التطبيقات. | 4.0 | لا |
Description |
وصف نصي للخادم الوكيل لواجهة برمجة التطبيقات. في حال توفّره، سيتم عرض الوصف باللغة واجهة مستخدم إدارة الحافة. | لا ينطبق | لا |
DisplayName |
اسم سهل الاستخدام قد يختلف عن السمة name
إعداد الخادم الوكيل لواجهة برمجة التطبيقات. |
لا ينطبق | لا |
Policies |
هذه قائمة بالسياسات في الدليل /policies للخادم الوكيل لواجهة برمجة التطبيقات هذا. وسوف
عادةً ما يظهر هذا العنصر فقط عند إنشاء الخادم الوكيل لواجهة برمجة التطبيقات باستخدام واجهة مستخدم إدارة Edge.
هذا مجرد "بيان" مصمم، يهدف إلى توفير رؤية حول محتويات
الخادم الوكيل لواجهة برمجة التطبيقات. |
لا ينطبق | لا |
ProxyEndpoints |
قائمة بنقاط ProxyEndpoints في دليل /proxies للخادم الوكيل لواجهة برمجة التطبيقات هذا إِنْتَ
وعادةً ما يتمكنون من رؤية هذا العنصر فقط عند إنشاء خادم وكيل واجهة برمجة التطبيقات باستخدام المتصفح Edge
إدارة واجهة المستخدم. هذا مجرد "بيان" صُمِّمت لتوفير رؤية
محتويات الخادم الوكيل لواجهة برمجة التطبيقات. |
لا ينطبق | لا |
Resources |
قائمة بالموارد (JavaScript وPython وJava وWava) في /resources
دليل الخادم الوكيل لواجهة برمجة التطبيقات هذا. لن ترى عادةً هذا العنصر إلا عندما كان خادم وكيل واجهة برمجة التطبيقات
الذي تم إنشاؤه باستخدام واجهة مستخدم إدارة Edge. هذا مجرد "بيان" الإعداد، مصمم من أجل
توفير رؤية لمحتوى الخادم الوكيل لواجهة برمجة التطبيقات. |
لا ينطبق | لا |
Spec |
تحدد مواصفات OpenAPI المرتبطة بالخادم الوكيل لواجهة برمجة التطبيقات. القيمة
يتم تعيينها إلى عنوان URL أو على مسار في مخزن المواصفات. ملاحظة: يتوفّر متجر المواصفات في تجربة New Edge. فقط. للحصول على مزيد من المعلومات حول مخزن المواصفات، اطلع على الإدارة والمشاركة المواصفات. |
لا ينطبق | لا |
TargetServers |
قائمة بخوادم TargetServer المُشار إليها في أي نقطة نهاية مستهدفة للخادم الوكيل لواجهة برمجة التطبيقات هذا. وسوف عادةً ما يظهر هذا العنصر فقط عند إنشاء الخادم الوكيل لواجهة برمجة التطبيقات باستخدام واجهة مستخدم إدارة Edge. هذا مجرد "بيان" مصمم، يهدف إلى توفير رؤية حول محتويات الخادم الوكيل لواجهة برمجة التطبيقات. | لا ينطبق | لا |
TargetEndpoints |
قائمة بنقاط النهاية المستهدفة في دليل /targets للخادم الوكيل لواجهة برمجة التطبيقات هذا. إِنْتَ
وعادةً ما يتمكنون من رؤية هذا العنصر فقط عند إنشاء خادم وكيل واجهة برمجة التطبيقات باستخدام المتصفح Edge
إدارة واجهة المستخدم. هذا مجرد "بيان" صُمِّمت لتوفير رؤية
محتويات الخادم الوكيل لواجهة برمجة التطبيقات. |
لا ينطبق | لا |
ProxyEndpoint
توضح الصورة التالية مسار الطلب/الاستجابة:
/apiproxy/proxies/default.xml
تحدِّد إعدادات ProxyEndpoint الواجهة الواردة (الموجَّهة للعميل) لإحدى واجهات برمجة التطبيقات. الخادم الوكيل. عند ضبط نقطة نهاية ProxyEndpoint، يتم إعداد ضبط للشبكة يحدد كيفية استدعاء تطبيقات العميل ("التطبيقات") لواجهة برمجة التطبيقات التي تم إنشاؤها باستخدام خادم وكيل.
سيتم تخزين النموذج التالي لإعداد ProxyEndpoint ضمن
/apiproxy/proxies
:
<ProxyEndpoint name="default"> <PreFlow/> <Flows/> <PostFlow/> <HTTPProxyConnection> <BasePath>/weather</BasePath> <VirtualHost>default</VirtualHost> </HTTPProxyConnection> <FaultRules/> <DefaultFaultRule/> <RouteRule name="default"> <TargetEndpoint>default</TargetEndpoint> </RouteRule> </ProxyEndpoint>
عناصر الضبط المطلوبة في ProxyEndpoint الأساسية هي:
إعداد نقطة نهاية الخادم الوكيل العناصر
الاسم | الوصف | تلقائي | مطلوب؟ |
---|---|---|---|
ProxyEndpoint |
|||
name |
اسم ProxyEndpoint يجب أن يكون فريدًا ضمن إعداد الخادم الوكيل لواجهة برمجة التطبيقات، في حال
(في حالات نادرة) يتم تحديد نقاط ProxyEndpoints متعددة. الأحرف المسموح لك باستخدامها
في الاسم على ما يلي: A-Za-z0-9._\-$ % . |
لا ينطبق | نعم |
PreFlow |
تحدّد هذه السمة السياسات في مسار PreFlow لأحد الطلبات أو الردود. | لا ينطبق | نعم |
Flows |
تحدّد السياسات في التدفقات الشرطية للطلب أو الاستجابة.
|
لا ينطبق | نعم |
PostFlow |
تحدِّد هذه السياسة السياسات في مسار PostFlow لطلب أو ردّ.
|
لا ينطبق | نعم |
HTTPProxyConnection |
تُحدِّد عنوان الشبكة ومسار معرّف الموارد المنتظم (URI) المرتبط بالخادم الوكيل لواجهة برمجة التطبيقات. | ||
BasePath |
سلسلة مطلوبة تحدد بشكلٍ فريد مسار معرّف الموارد المنتظم (URI) الذي تستخدمه Apigee Edge للتوجيه الرسائل الواردة إلى الخادم الوكيل لواجهة برمجة التطبيقات المناسب. BasePath هو جزء من عنوان URI (على سبيل المثال استخدام حرف بدل في المسارات الأساسية يمكنك استخدام علامة "*" واحدة أو أكثر أحرف البدل في المسارات الأساسية لخادم وكيل واجهة برمجة التطبيقات على سبيل المثال، تستخدم قاعدة
مسار ملاحظة مهمة: لا تتيح Apigee استخدام حرف بدل "*". كالأول
عنصر مسار أساسي. مثلاً، لا يتوفّر ذلك: |
/ | نعم |
VirtualHost |
تعمل هذه السياسة على ربط خادم وكيل لواجهة برمجة التطبيقات بعناوين URL أساسية محدَّدة لإحدى البيئات. مضيف VirtualHost هو باسم تهيئة معينة تحدد عنوان URL واحدًا أو أكثر في إحدى البيئات. تحدد VirtualHosts المحددة المحددة لـ ProxyEndpoint النطاقات والمنافذ على التي يتم الكشف عنها الخادم الوكيل لواجهة برمجة التطبيقات، وبالتالي عنوان URL الذي تستخدمه التطبيقات لاستدعاء واجهة برمجة تطبيقات الخادم الوكيل. بشكل افتراضي، يتم تحديد مضيفين VirtualHosts للبيئة:
" |
التلقائية | لا |
Properties |
يمكن تحديد مجموعة من إعدادات تهيئة HTTP الاختيارية كخصائص
<ProxyEndpoint> |
لا ينطبق | لا |
FaultRules |
تحدد هذه السياسة كيفية تفاعل ProxyEndpoint مع خطأ. تحدد قاعدة الخطأ اثنين
العناصر:
يُرجى الاطّلاع على معالجة الأخطاء. |
لا ينطبق | لا |
DefaultFaultRule |
معالجة أي أخطاء (النظام أو وسيلة النقل أو الرسائل أو السياسة) غير واضحة التعامل معها من خلال قاعدة خطأ أخرى. يُرجى الاطّلاع على معالجة الأخطاء. |
لا ينطبق | لا |
RouteRule |
تُحدِّد وجهة رسائل الطلبات الواردة بعد معالجتها بواسطة مسار طلب نقطة نهاية الخادم الوكيل عادةً ما تشير RouteRule إلى نقطة نهاية مستهدَفة مسماة ولكن يمكنه أيضًا أن يشير مباشرةً إلى عنوان URL. | ||
Name |
السمة المطلوبة التي توفّر اسمًا لقاعدة RouteRule. الشخصيات التي
في الاسم، يُسمح بما يلي: A-Za-z0-9._\-$ % . بالنسبة
على سبيل المثال، Cat2 %_ هو اسم قانوني. |
لا ينطبق | نعم |
Condition |
عبارة شرطية اختيارية تُستخدم للتوجيه الديناميكي في وقت التشغيل. الشرطي تُعد RouteRules مفيدة، على سبيل المثال، لتفعيل التوجيه المستند إلى المحتوى لدعم الخلفية. للإصدارات. | لا ينطبق | لا |
TargetEndpoint |
سلسلة اختيارية تحدِّد إعدادات TargetEndpoint المُسمّاة. اسم
تشير TargetEndpoint إلى أي نقطة نهاية مستهدفة محدّدة في الخادم الوكيل لواجهة برمجة التطبيقات نفسه ضمن
دليل من خلال تسمية TargetEndpoint، أنت تشير إلى المكان الذي يجب إعادة توجيه رسائل الطلبات إليه. بعد المعالجة بواسطة مسار طلبات ProxyEndpoint. لاحظ أن هذا أمر اختياري الإعداد. قد تطلب نقطة نهاية الخادم الوكيل عنوان URL مباشرةً. على سبيل المثال، مورد JavaScript أو Java، يؤدي دور عميل HTTP، قد يؤدي المهمة الأساسية TargetEndpoint هو اختصار لإعادة توجيه الطلبات إلى خدمة خلفية. |
لا ينطبق | لا |
عنوان URL | سلسلة اختيارية تحدد عنوان شبكة صادر يتم استدعاءه بواسطة
ProxyEndpoint، تجاوز أي إعدادات لنقطة نهاية مستهدَفة قد يتم تخزينها ضمن
/targets |
لا ينطبق | لا |
كيفية ضبط RouteRules
يشير عنصر TargetEndpoint يُسمى إلى ملف إعداد ضمن /apiproxy/targets
إلى
الذي يعيد RouteRule توجيه الطلب بعد معالجته بواسطة ProxyEndpoint.
على سبيل المثال، تشير RouteRule التالية إلى الإعدادات
/apiproxy/targets/myTarget.xml
:
<RouteRule name="default"> <TargetEndpoint>myTarget</TargetEndpoint> </RouteRule>
استدعاء عنوان URL المباشر
يمكن أيضًا لـ ProxyEndpoint استدعاء خدمة خلفية مباشرةً. يتجاوز الاستدعاء المباشر لعنوان URL أي
تسمى إعداد TargetEndpoints ضمن /apiproxy/targets
). لهذا السبب،
TargetEndpoint هو إعداد اختياري للخادم الوكيل لواجهة برمجة التطبيقات، مع أنّه في الواقع استدعاء مباشر
من ProxyEndpoint
على سبيل المثال، تقوم RouteRule التالي باستدعاء HTTP إلى
http://api.mycompany.com/v2
<RouteRule name="default"> <URL>http://api.mycompany.com/v2</URL> </RouteRule>
المسارات الشرطية
يمكن ربط سلسلة RouteRules لدعم التوجيه الديناميكي في وقت التشغيل. يمكن أن تكون الطلبات الواردة يتم توجيهها إلى إعدادات TargetEndpoint مباشرةً أو إلى مزيج من الاثنين التي تستند إلى رؤوس HTTP أو محتوى الرسالة أو معلمات طلب البحث أو المعلومات السياقية مثل وقت واليوم واللغة وما إلى ذلك
تعمل RouteRules الشرطية مثل العبارات الشرطية الأخرى على Apigee Edge. راجِع مرجع الشروط ومرجع المتغيّرات.
على سبيل المثال، تقيّم مجموعة RouteRule التالية أولاً الطلب الوارد للتحقُّق
قيمة عنوان HTTP. في حال كان عنوان HTTP routeTo
يتضمّن القيمة
TargetEndpoint1
، تتم إعادة توجيه الطلب إلى TargetEndpoint المسماة.
TargetEndpoint1
إذا لم يكن الأمر كذلك، ستتم إعادة توجيه الطلب الوارد إلى
http://api.mycompany.com/v2
<RouteRule name="MyRoute"> <Condition>request.header.routeTo = "TargetEndpoint1"</Condition> <TargetEndpoint>TargetEndpoint1</TargetEndpoint> </RouteRule> <RouteRule name="default"> <URL>http://api.mycompany.com/v2</URL> </RouteRule>
مسارات فارغة
يمكن تحديد RouteRule الفارغة لدعم السيناريوهات التي لا تتوفّر فيها رسالة الطلب. يجب إعادة توجيهها إلى TargetEndpoint. ويفيد ذلك عندما ينفذ ProxyEndpoint جميع المعالجة اللازمة، على سبيل المثال باستخدام JavaScript لاستدعاء خدمة خارجية أو واسترداد البيانات من بحث إلى خدمات واجهة برمجة التطبيقات" مخزن المفتاح/القيمة.
على سبيل المثال، يحدد ما يلي مسارًا فارغًا:
<RouteRule name="GoNowhere"/>
يمكن أن تكون المسارات الفارغة الشرطية مفيدة. في المثال التالي، يتم ضبط مسار فارغ على
التنفيذ عندما يتضمّن عنوان HTTP request.header.X-DoNothing
قيمة أخرى غير
null
<RouteRule name="DoNothingOnDemand"> <Condition>request.header.X-DoNothing != null</Condition> </RouteRule>
تذكَّر أنّه يمكن وضع تسلسل RouteRules، وبالتالي يكون المسار الفارغ المشروط عادةً واحدًا. مكون من مجموعة من قواعد RouteRules وهي مُصمَّمة لدعم التوجيه المشروط.
يساعد الاستخدام العملي لمسار فارغ مشروط في التخزين المؤقت. باستخدام القيمة من المتغير الذي تم ضبطه من خلال سياسة ذاكرة التخزين المؤقت، يمكنك ضبط خادم وكيل لواجهة برمجة التطبيقات لتنفيذ مسار فارغ عند عرض إدخال من ذاكرة التخزين المؤقت.
<RouteRule name="DoNothingUnlessTheCacheIsStale"> <Condition>lookupcache.LookupCache-1.cachehit is true</Condition> </RouteRule>
TargetEndpoint
أما TargetEndpoint، فهو مكافئ صادر لـ ProxyEndpoint. تعمل TargetEndpoint إلى خدمة خلفية أو واجهة برمجة تطبيقات -- حيث يرسل الطلبات ويتلقى الاستجابات.
لا يُشترَط أن يحتوي خادم وكيل لواجهة برمجة التطبيقات على أي نقاط نهاية مستهدَفة. يمكن ضبط ProxyEndpoints لاستدعاء عناوين URL مباشرةً. عادةً ما يحتوي الخادم الوكيل لواجهة برمجة التطبيقات الذي لا يتضمّن TargetEndpoints على نقطة نهاية وكيل يتصل مباشرةً بخدمة خلفية، أو تم إعداده لاستدعاء خدمة ما باستخدام Java أو JavaScript.
إعدادات TargetEndpoint
/targets/default.xml
تحدد TargetEndpoint الاتصال الصادر من Apigee Edge إلى خدمة أخرى أو المصدر.
وفي ما يلي نموذج لضبط نقطة النهاية المستهدفة:
<TargetEndpoint name="default"> <PreFlow/> <Flows/> <PostFlow/> <HTTPTargetConnection> <URL>http://mocktarget.apigee.net</URL> <SSLInfo/> </HTTPTargetConnection> <FaultRules/> <DefaultFaultRule/> <ScriptTarget/> <LocalTargetConnection/> </TargetEndpoint>
إعدادات TargetEndpoint العناصر
ويمكن لنقطة النهاية المستهدفة استدعاء أي هدف بإحدى الطرق التالية:
- HTTPTargetConnection لطلبات HTTP(S)
- LocalTargetConnection لسلسلة محلية من خادم وكيل إلى خادم.
- ScriptTarget لاستدعاءات المكالمات إلى شبكة Edge مستضافة نص Node.js البرمجي
يجب إعداد حقل واحد فقط من هذه العناصر في TargetEndpoint.
الاسم | الوصف | تلقائي | مطلوب؟ |
---|---|---|---|
TargetEndpoint |
|||
name |
اسم TargetEndpoint الذي يجب أن يكون فريدًا داخل الخادم الوكيل لواجهة برمجة التطبيقات
التكوين. يُستخدم اسم TargetEndPoint في ProxyEndpoint RouteRule من أجل
الطلبات المباشرة للمعالجة الصادرة. الأحرف المسموح لك باستخدامها في الاسم
على ما يلي: A-Za-z0-9._\-$ % . |
لا ينطبق | نعم |
PreFlow |
تحدّد هذه السمة السياسات في مسار PreFlow لأحد الطلبات أو الردود. | لا ينطبق | نعم |
Flows |
تحدّد السياسات في التدفقات الشرطية للطلب أو الاستجابة.
|
لا ينطبق | نعم |
PostFlow |
تحدِّد هذه السياسة السياسات في مسار PostFlow لطلب أو ردّ.
|
لا ينطبق | نعم |
HTTPTargetConnection |
مع عناصره الفرعية، تحدد مدى الوصول إلى مورد الخلفية عبر HTTP. إذا كنت تستخدم HTTPTargetConnection، لا تضبط أنواعًا أخرى من الاتصالات المستهدفة. (ScriptTarget أو LocalTargetConnection). |
||
URL |
تحدِّد هذه السياسة عنوان الشبكة لخدمة الخلفية التي تتم إعادة توجيه TargetEndpoint إليها. لطلب رسائل. | لا ينطبق | لا |
LoadBalancer |
يحدد واحدًا أو أكثر من تهيئات TargetServer المسماة. الخادم المستهدف المُسمّى يمكن استخدام الإعدادات لموازنة التحميل من خلال تحديد 2 أو أكثر من إعدادات نقطة النهاية الاتصالات. يمكنك أيضًا استخدام TargetServers لفصل إعدادات الخادم الوكيل لواجهة برمجة التطبيقات عن عناوين URL لنقاط نهاية خدمة الخلفية. |
لا ينطبق | لا |
Properties |
يمكن تحديد مجموعة من إعدادات تهيئة HTTP الاختيارية كخصائص
<TargetEndpoint> |
لا ينطبق | لا |
SSLInfo |
بشكل اختياري، يمكنك تحديد إعدادات TLS/SSL على TargetEndpoint للتحكّم في TLS/SSL. الاتصال بين الخادم الوكيل لواجهة برمجة التطبيقات والخدمة المستهدفة. يُرجى الاطِّلاع على إعداد نقطة النهاية المستهدفة لطبقة النقل الآمنة/طبقة المقابس الآمنة. | لا ينطبق | لا |
LocalTargetConnection |
باستخدام عناصرها الفرعية، تحدد موردًا ليتم الوصول إليه محليًا، مع تجاوز الشبكة
مثل موازنة التحميل ومعالِجات الرسائل.
لتحديد المورد المستهدف، قم بتضمين إما عنصر APIProxy الثانوي (مع ProxyEndpoint) أو عنصر المسار الفرعي لمزيد من المعلومات، يُرجى الاطّلاع على الخوادم الوكيلة لواجهة برمجة التطبيقات Chaining API. معًا. إذا كنت تستخدم LocalTargetConnection، لا تضبط أنواعًا أخرى من الاتصالات المستهدفة. (HTTPTargetConnection أو ScriptTarget). |
||
APIProxy |
تحدِّد هذه السياسة اسم الخادم الوكيل لواجهة برمجة التطبيقات لاستخدامه كهدف للطلبات. الخادم الوكيل المستهدف أن تكون في نفس المؤسسة والبيئة التي يوجد بها الخادم الوكيل الذي يرسل الطلبات. هذا هو كبديل لاستخدام عنصر المسار. | لا ينطبق | لا |
ProxyEndpoint |
يتم استخدامه مع APIProxy لتحديد اسم ProxyEndpoint للخادم الوكيل المستهدَف. | لا ينطبق | لا |
Path |
تحدِّد مسار نقطة النهاية للخادم الوكيل لواجهة برمجة التطبيقات من أجل استخدامه كهدف للطلبات. الهدف يجب أن يكون الخادم الوكيل في نفس المؤسسة والبيئة مثل الخادم الوكيل الذي يرسل الطلبات. هذا النمط كخيار بديل لاستخدام واجهة برمجة التطبيقات API. | لا ينطبق | لا |
FaultRules |
تحدد هذه السياسة كيفية تفاعل نقطة النهاية المستهدفة مع خطأ. تحدد قاعدة الخطأ اثنين
العناصر:
يُرجى الاطّلاع على معالجة الأخطاء. |
لا ينطبق | لا |
DefaultFaultRule |
معالجة أي أخطاء (النظام أو وسيلة النقل أو الرسائل أو السياسة) غير واضحة التعامل معها بواسطة FaultRule الأخرى. يُرجى الاطّلاع على معالجة الأخطاء. |
لا ينطبق | لا |
ScriptTarget |
|||
ResourceURL |
يعرّف نوع المورد (عقدة) واسم النص البرمجي Node.js الرئيسي الذي تنفِّذ وظيفة TargetEndpoint.
يجب تضمين النص البرمجي مع ملفات المورد للخادم الوكيل لواجهة برمجة التطبيقات. راجع إضافة Node.js إلى الخادم الوكيل الحالي لواجهة برمجة التطبيقات إذا كنت تستخدم ScriptTarget، لا تضبط أنواعًا أخرى من الاتصالات المستهدفة. (HTTPTargetConnection أو LocalTargetConnection). |
لا ينطبق | نعم |
EnvironmentVariable |
يمكنك اختياريًا تمرير متغيرات البيئة إلى النص البرمجي الرئيسي في Node.js. |
لا ينطبق | لا |
Arguments |
يمكنك اختياريًا تمرير الوسيطات إلى نص Node.js البرمجي الرئيسي. |
لا ينطبق | لا |
إعداد نقطة النهاية المستهدفة لطبقة النقل الآمنة/طبقة المقابس الآمنة
غالبًا ما تحتاج نقاط النهاية المستهدفة إلى إدارة اتصالات HTTPS باستخدام خلفية غير متجانسة. البنية الأساسية. لهذا السبب، يتم دعم عدد من إعدادات تهيئة TLS/SSL.
TLS/SSL عناصر ضبط نقطة النهاية المستهدفة
الاسم | الوصف | تلقائي | مطلوب؟ |
---|---|---|---|
SSLInfo |
|||
Enabled |
يشير إلى ما إذا تم تفعيل TLS/SSL لنقطة النهاية.
القيمة التلقائية هي true إذا كان <URL> يحدد بروتوكول HTTPS،
وfalse إذا كان <URL> يحدد HTTP. |
صحيح إذا كان <URL> يحدد HTTPS |
لا |
TrustStore |
ملف تخزين مفاتيح يحتوي على شهادات خادم موثوقة. | لا ينطبق | لا |
ClientAuthEnabled |
إعداد يشغّل مصادقة العملاء الصادر (بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) ثنائية الاتجاه) | خطأ | لا |
KeyStore |
ملف تخزين مفاتيح يحتوي على مفاتيح خاصة تُستخدم لمصادقة العميل الصادر | لا ينطبق | نعم (إذا كانت قيمة ClientAuthEnabled صحيحة) |
KeyAlias |
الاسم المستعار للمفتاح الخاص بالمفتاح الخاص المستخدم في مصادقة العميل الصادر | لا ينطبق | نعم (إذا كانت قيمة ClientAuthEnabled صحيحة) |
Ciphers |
الرموز المتوافقة مع بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة (SSL) الصادرة. إذا لم يتم تحديد أي رموز، فإن جميع الرموز المتاحة لـ JVM. لتقييد التشفير، أضف العناصر التالية التي تسرد الرموز المتوافقة: <Ciphers> <Cipher>TLS_RSA_WITH_3DES_EDE_CBC_SHA</Cipher> <Cipher>TLS_RSA_WITH_DES_CBC_SHA</Cipher> </Ciphers> |
لا ينطبق | لا |
Protocols |
البروتوكولات المعتمدة لطبقة النقل الآمنة (TLS)/طبقة المقابس الآمنة (SSL) الصادرة. إذا لم يتم تحديد أي بروتوكولات، فحينئذٍ يتم تحديد جميع المسموح بها من البروتوكولات المتاحة لـ JVM. لتقييد البروتوكولات، أضِف العناصر التالية التي تسرد البروتوكولات المتوافقة: <Protocols> <Protocol>TLSv1.1</Protocol> <Protocol>TLSv1.2</Protocol> </Protocols> |
لا ينطبق | لا |
CommonName |
إذا تم تحديد قيمة، يتم التحقّق من صحة الاسم الشائع للشهادة الهدف بناءً عليها. هذه القيمة صالحة فقط لإعدادات ضبط TargetEndpoint وTargetServer. لا صالحة لتهيئات VirtualHost. بشكلٍ تلقائي، تتم مطابقة القيمة المحدّدة تمامًا مع الاسم الشائع للشهادة الهدف.
على سبيل المثال، استخدام اختياريًا، يمكن في Apigee تنفيذ المطابقة باستخدام أحرف البدل باستخدام السمة على سبيل المثال، ستتم مطابقة اسم شائع محدّد على أنه <CommonName wildcardMatch="true">*.myhost.com</CommonName> |
لا ينطبق | لا |
نموذج TargetEndpoint مع تفعيل مصادقة العميل الصادر
<TargetEndpoint name="default"> <HttpTargetConnection> <URL>https://myservice.com</URL> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>true</ClientAuthEnabled> <KeyStore>myKeystore</KeyStore> <KeyAlias>myKey</KeyAlias> <TrustStore>myTruststore</TrustStore> </SSLInfo> </HttpTargetConnection> </TargetEndpoint>
للحصول على تعليمات تفصيلية، يُرجى الاطّلاع على ضبط بروتوكول أمان طبقة النقل (TLS). من Edge إلى الخلفية (السحابة الإلكترونية والسحابة الإلكترونية الخاصة).
استخدام متغيرات التدفق لضبط قيم TLS/SSL ديناميكيًا
يمكنك أيضًا ضبط تفاصيل بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة بشكل ديناميكي لتلبية متطلبات بيئة التشغيل المرنة. على سبيل المثال، إذا كان الخادم الوكيل يتصل باثنين من الأهداف المحتملة المختلفتين (هدف اختباري يمكنك جعل خادم وكيل واجهة برمجة التطبيقات يكتشف البيئة التي الاتصال وضبط المراجع ديناميكيًا على ملف تخزين المفاتيح والثقة المناسبَين. ما يلي: تشرح مقالة منتدى Apigee هذا السيناريو بمزيد من التفاصيل وتوفّر واجهة برمجة تطبيقات قابلة للنشر. أمثلة على الخادم الوكيل: https://community.apigee.com/articles/21424/dynamic-sslinfo-for-targetendpoint-using-variable.html.
في المثال التالي، طريقة ضبط العلامة <SSLInfo>
في
ضبط TargetEndpoint، يمكن تقديم القيم في وقت التشغيل، على سبيل المثال، باستخدام Java
وسيلة شرح أو سياسة JavaScript أو سياسة "تعيين رسالة" استخدام أي متغيرات للرسالة
سيحتوي على القيم التي تريد تعيينها.
يُسمح باستخدام المتغيرات في العناصر التالية فقط.
<SSLInfo> <Enabled>{myvars.ssl.enabled}</Enabled> <ClientAuthEnabled>{myvars.ssl.client.auth.enabled}</ClientAuthEnabled> <KeyStore>{myvars.ssl.keystore}</KeyStore> <KeyAlias>{myvars.ssl.keyAlias}</KeyAlias> <TrustStore>{myvars.ssl.trustStore}</TrustStore> </SSLInfo>
استخدام مراجع لضبط قيم بروتوكول أمان طبقة النقل (TLS) وطبقة المقابس الآمنة (SSL) ديناميكيًا
عند ضبط نقطة نهاية مستهدفة تستخدم بروتوكول HTTPS، يجب مراعاة الحالة عندما تنتهي صلاحية شهادة TLS/SSL، أو يتطلب منك تغيير إعداد النظام تحديث الشهادة. ضِمن تثبيت Edge for Private Cloud عند ضبط بروتوكول أمان طبقة النقل (TLS) أو طبقة المقابس الآمنة (SSL) باستخدام قيم ثابتة أو من خلال باستخدام متغيرات التدفق، قد تضطر إلى إعادة تشغيل معالِجات الرسائل.
لمزيد من المعلومات، يُرجى الاطِّلاع على تحديث بروتوكول أمان طبقة النقل (TLS) الشهادة.
ومع ذلك، يمكنك اختياريًا ضبط TargetEndpoint لاستخدام مرجع في ملف تخزين المفاتيح أو ملف تخزين الثقة بدلاً من ذلك. تتمثل ميزة استخدام المرجع في إمكانية تحديث الرجوع إلى ملف تخزين مفاتيح مختلف أو مخزن ثقة لتحديث شهادة بروتوكول أمان طبقة النقل (TLS)/طبقة المقابس الآمنة بدون الاضطرار إلى إعادة تشغيل معالجات الرسائل.
على سبيل المثال، في ما يلي نقطة نهاية مستهدفة تستخدم مرجعًا لملف تخزين المفاتيح:
<SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>ref://keystoreref</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo>
استخدِم طلب POST التالي من واجهة برمجة التطبيقات لإنشاء المرجع المُسمّى keystoreref:
curl -X POST -H "Content-Type:application/xml" https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/references \ -d '<ResourceReference name="keystoreref"> <Refers>myTestKeystore</Refers> <ResourceType>KeyStore</ResourceType> </ResourceReference>' -u email:password
يحدد المرجع اسم ملف تخزين المفاتيح ونوعه.
يمكنك استخدام طلب GET API التالي لعرض المرجع:
curl -X GET https://api.enterprise.apigee.com/v1/o/[org_name}/e/{env_name}/references/keystoreref -u uname:password
لتغيير المرجع لاحقًا إلى ملف تخزين مفاتيح مختلف، فإن التأكد من أن الاسم المستعار نفس الاسم، استخدم استدعاء PUT التالي:
curl -X PUT -H "Content-Type:application/xml" https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/references/keystoreref \ -d '<ResourceReference name="keystoreref"> <Refers>myNewKeystore</Refers> <ResourceType>KeyStore</ResourceType> </ResourceReference>' -u email:password
TargetEndpoint من خلال موازنة الحمل المستهدَف
تتيح TargetEndpoints موازنة التحميل على مستوى عدة خوادم TargetServers مُسمّاة باستخدام ثلاث منصات تحميل. خوارزميات تحقيق التوازن.
للحصول على تعليمات تفصيلية، يُرجى الاطّلاع على مقالة موازنة التحميل في الخلفية. الخوادم.
السياسات
يتضمّن الدليل /policies
في الخادم الوكيل لواجهة برمجة التطبيقات جميع السياسات المتاحة
المرفق بالتدفقات في الخادم الوكيل لواجهة برمجة التطبيقات.
عناصر ضبط السياسة
الاسم | الوصف | تلقائي | مطلوب؟ |
---|---|---|---|
Policy |
|||
name |
الاسم الداخلي للسياسة. يتم فرض قيود على الأحرف التي يمكنك استخدامها في الاسم
إلى: يمكنك بشكل اختياري استخدام العنصر |
لا ينطبق | نعم |
enabled |
اضبط القيمة على ضبط على |
صحيح | لا |
continueOnError |
اضبط القيمة على يمكنك ضبط القيمة على |
خطأ | لا |
async |
ملاحظة: لا تؤدي هذه السمة إلى تنفيذ السياسة بشكل غير متزامن.
في معظم الحالات، يمكنك ترك هذا الإعداد على الإعداد التلقائي وهو عند الضبط على لاستخدام السلوك غير المتزامن في الخوادم الوكيلة لواجهة برمجة التطبيقات، يُرجى الاطّلاع على نموذج عنصر JavaScript. |
خطأ | لا |
مرفق السياسة
توضِّح الصورة التالية تسلسل تنفيذ مسارات الخادم الوكيل لواجهة برمجة التطبيقات:
كما هو موضح أعلاه:
يتم إرفاق السياسات كخطوات لمعالجة التدفقات. يُستخدم اسم السياسة للأغراض التالية: الإشارة إلى السياسة التي سيتم فرضها كخطوة معالجة تنسيق مرفق السياسة هو ما يلي:
<Step><Name>MyPolicy</Name></Step>
يتم فرض السياسات بالترتيب الذي يتم إرفاقها به بالتدفق. على سبيل المثال:
<Step><Name>FirstPolicy</Name></Step> <Step><Name>SecondPolicy</Name></Step>
إعداد مرفقات السياسة العناصر
الاسم | الوصف | تلقائي | مطلوب؟ |
---|---|---|---|
Step |
|||
Name |
اسم السياسة التي سيتم تنفيذها من خلال تعريف الخطوة هذا. | لا ينطبق | نعم |
Condition |
يشير ذلك المصطلح إلى عبارة شرطية تحدّد ما إذا كانت السياسة سارية أم لا. إذا شرط مرتبط بالسياسة، فيتم تنفيذ السياسة فقط إذا كان الشرط يتم تقييمه إلى true. | لا ينطبق | لا |
التدفقات
تحدد ProxyEndpoint وTargetEndpoint مسارًا لرسالة الطلب والردّ. قيد المعالجة. يتكون مسار المعالجة من تدفق الطلب وتدفق الاستجابة. كل طلب يتم تقسيم تدفق الاستجابة والاستجابة فرعيًا إلى PreFlow، وهو نوع اختياري أو أكثر من "شرطي" أو "مُسمّى" وPostFlow.
- PreFlow: يتم تنفيذه دائمًا. يتم التنفيذ قبل أي تدفقات شرطية.
- PostFlow: يتم تنفيذه دائمًا. يتم التنفيذ بعد أي تدفقات شرطية.
بالإضافة إلى ذلك، يمكنك إضافة PostClientFlow إلى ProxyEndpoint، والذي يتم تنفيذه بعد
يتم إرجاع الرد إلى تطبيق العميل الذي أرسل الطلب. لا تسري إلا سياسة تسجيل الرسائل
يمكن إرفاق إضافة تسجيل الدخول إلى Google Stackdriver.
على هذا التدفق. تقلل PostClientFlow من وقت استجابة الخادم الوكيل لواجهة برمجة التطبيقات ويوفر معلومات
تسجيل لا يتم احتسابه إلا بعد أن يتم إرجاع الرد إلى العميل، مثل
client.sent.start.timestamp
وclient.sent.end.timestamp
. يتم استخدام المسار.
ويهدف هذا الإجراء في المقام الأول إلى قياس الفاصل الزمني بين الطوابع الزمنية لبداية الردّ وانتهائه.
.
مشاهدة فيديو إرشادي سريع
الفيديو: شاهِد هذا الفيديو القصير حول استخدام ميزة تسجيل الدخول إلى الرسائل PostClientFlow.
في ما يلي مثال على PostClientFlow مع إرفاق سياسة تسجيل الرسائل.
... <PostFlow name="PostFlow"> <Request/> <Response/> </PostFlow> <PostClientFlow> <Request/> <Response> <Step> <Name>Message-Logging-1</Name> </Step> </Response> </PostClientFlow> ...
ينفِّذ مسار معالجة الخادم الوكيل لواجهة برمجة التطبيقات التدفقات بالتسلسل التالي:
مسار الطلب:
- تدفق مسبق لطلب الخادم الوكيل
- مسارات شرطية لطلب الخادم الوكيل (اختياري)
- طلب الخادم الوكيل PostFlow
- التدفق المسبق للطلبات المستهدفة
- مسارات شرطية للطلب المستهدف (اختياري)
- الطلب المستهدَف PostFlow
مسار الاستجابة:
- التدفق المسبق للاستجابة المستهدفة
- التدفقات الشرطية للاستجابة المستهدفة (اختياري)
- الردّ المستهدَف PostFlow
- تدفق استجابة الخادم الوكيل
- التدفقات الشرطية لاستجابة الخادم الوكيل (اختياري)
- PostFlow لاستجابة الخادم الوكيل
- رد PostClientFlow (اختياري)
يجب ضبط عمليات التدفق التي تتضمن مرفقات سياسة فقط في ProxyEndpoint أو إعدادات TargetEndpoint يجب تحديد PreFlow وPostFlow فقط في نقطة نهاية ProxyEndpoint أو ضبط TargetEndpoint عند الحاجة إلى فرض سياسة أثناء PreFlow أو PostFlow قيد المعالجة.
على عكس التدفقات الشرطية، لا يكون ترتيب عناصر PreFlow وPostFlow مهم للغاية--سينفذ الخادم الوكيل لواجهة برمجة التطبيقات دائمًا كل منها عند النقطة المناسبة في مسار العملية، بغض النظر عن مكان ظهورها في إعدادات نقطة النهاية.
التدفقات الشرطية
تدعم نقاط النهاية ProxyEndpoints وTargetEndpoints عددًا غير محدود من التدفقات الشرطية (أيضًا تُعرف باسم "التدفقات المُعنونة").
يختبر وكيل واجهة برمجة التطبيقات الشرط المحدّد في التدفق الشرطي، وإذا كان الشرط يمكن تنفيذ خطوات المعالجة في التدفق الشرطي بواسطة الخادم الوكيل لواجهة برمجة التطبيقات. إذا كانت شرط عدم استيفاء الشرط، فسيتم تجاوز خطوات المعالجة في التدفق الشرطي. الشرطي يتم تقييم التدفقات بالترتيب المحدّد في خادم وكيل واجهة برمجة التطبيقات وأول إجراء يكون شرطه Meet.
من خلال تحديد التدفقات الشرطية، يمكنك تطبيق خطوات المعالجة في خادم وكيل لواجهة برمجة التطبيقات. بناءً على:
- عنوان URI للطلب
- فعل HTTP (GET/PUT/POST/DELETE)
- قيمة معلَمة طلب البحث والعنوان ومعلَمة النموذج
- العديد من أنواع الحالات الأخرى
على سبيل المثال، يحدد التدفق الشرطي التالي أنه يتم تنفيذه فقط عندما
مسار مورد الطلب هو /accesstoken
. ينبغي أن يتضمن أي طلب وارد
المسار /accesstoken
إلى تنفيذ هذا المسار، بالإضافة إلى أي سياسات
المرتبطة بالتدفق. في حال لم يتضمّن مسار الطلب اللاحقة
/accesstoken
، لن يتم تنفيذ التدفق (على الرغم من وجود تدفق شرطي آخر
ربما).
<Flows> <Flow name="TokenEndpoint"> <Condition>proxy.pathsuffix MatchesPath "/accesstoken"</Condition> <Request> <Step> <Name>GenerateAccessToken</Name> </Step> </Request> </Flow> </Flows>
عناصر إعداد التدفق
الاسم | الوصف | تلقائي | مطلوب؟ |
---|---|---|---|
Flow |
يشير هذا المصطلح إلى مسار معالجة الطلبات أو الردود الذي تحدّده A ProxyEndpoint أو TargetEndpoint | ||
Name |
الاسم الفريد للتدفق. | لا ينطبق | نعم |
Condition |
عبارة شرطية تقوم بتقييم متغيرات أو أكثر لتقييمها إلى true أو خطأ. يجب أن تحدِّد جميع التدفقات باستثناء نوعي PreFlow وPostFlow المحدَّدين مسبقًا شرط لتنفيذها. | لا ينطبق | نعم |
Request |
المسار المرتبط بطلب معالجة الرسائل | لا ينطبق | لا |
Response |
المسار المرتبط بمعالجة رسائل الردّ | لا ينطبق | لا |
جارٍ معالجة الخطوات
تفرض Apigee Edge الترتيب التسلسلي للتدفق المشروط. التدفقات الشرطية
التنفيذ من أعلى إلى أسفل. التدفق المشروط الأول الذي يتم تقييم حالته
يتم تنفيذ true
ويتم تنفيذ تدفق مشروط واحد فقط.
في إعدادات التدفق التالية مثلاً، أي طلب وارد لا يتضمن
تؤدّي لاحقة المسار /first
أو /second
إلى ThirdFlow
التنفيذ، ما يؤدي إلى فرض السياسة المسماة Return404
.
<Flows> <Flow name="FirstFlow"> <Condition>proxy.pathsuffix MatchesPath "/first"</Condition> <Request> <Step><Name>FirstPolicy</Name></Step> </Request> </Flow> <Flow name="SecondFlow"> <Condition>proxy.pathsuffix MatchesPath "/second"</Condition> <Request> <Step><Name>FirstPolicy</Name></Step> <Step><Name>SecondPolicy</Name></Step> </Request> </Flow> <Flow name="ThirdFlow"> <Request> <Step><Name>Return404</Name></Step> </Request> </Flow> </Flows>
المراجع
"الموارد" (ملفات الموارد للاستخدام في الخوادم الوكيلة لواجهة برمجة التطبيقات) هي النصوص البرمجية والرموز وعمليات تحويل XSL التي يمكن إرفاقها بالتدفقات باستخدام السياسات. تظهر هذه في "النصوص البرمجية" قسم من واجهة برمجة التطبيقات الخادم الوكيل في واجهة مستخدم الإدارة.
راجِع ملفات الموارد للاطّلاع على الملفات المتوافقة. والموارد.
يمكن تخزين الموارد في خادم وكيل لواجهة برمجة التطبيقات أو بيئة أو مؤسسة. في كل حالة، تتم الإشارة إلى المورد باسم في السياسة. تحل خدمات واجهة برمجة التطبيقات الاسم من خلال الانتقال من واجهة برمجة التطبيقات والوكيل والبيئة ومستوى المؤسسة.
يمكن الرجوع إلى مورد مخزَّن على مستوى المؤسسة من خلال السياسات في أي بيئة. ويمكن الإشارة إلى مورد مخزَّن على مستوى البيئة من خلال السياسات السارية في تلك البيئة. حاسمة لا يمكن الإشارة إليه من الموارد المخزنة على مستوى الخادم الوكيل لواجهة برمجة التطبيقات إلا من خلال السياسات في الخادم الوكيل لواجهة برمجة التطبيقات هذا.