إرفاق سياسة بتدفق ProxyEndpoint أو "هدف نقطة النهاية"

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
معلومات

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

إنّ اختيار نقطة الإرفاق مهم جدًا في سلوك الخادم الوكيل لواجهة برمجة التطبيقات. على سبيل المثال، في حال إرفاق سياسة "الحصة" بتدفق الاستجابة، سيتم فرض "الحصة" بعد إرسال رسالة الطلب إلى الخدمة الخلفية. سيؤدي ذلك إلى إلغاء الغرض من تطبيق سياسة الحصص. بالتالي، عليك إرفاق سياسة الحصة كخطوة معالجة في مسار الطلب.

يكون تنسيق مرفق السياسة على النحو التالي:

<Step>
    <Name>{policy_name}</Name>
</Step>

مثلاً:

<Step>
    <Name>QuotaPolicy</Name>
</Step>

يتم إرفاق سياسة بالتدفق عن طريق إضافة إعدادات الخطوة إلى عنصر تدفق الطلب أو الاستجابة المناسب في ضبط ProxyEndpoint أو نقطة نهاية.

يمكنك إرفاق سياسة بمسار الطلب أو الردّ. ويتم أيضًا تقسيم عمليات تدفق الطلبات والاستجابة إلى تقسيم فرعي إلى "PreFlow" و"PostFlow".

يوضِّح المثال التالي الحدّ الأدنى من إعدادات ProxyEndpoint، بدون أي مرفقات للسياسة. فهو يُعرّف HTTPProxyConnection (الداخلي) وRouteRule.

<ProxyEndpoint name="default">
    <HTTPProxyConnection>
        <BasePath>/weather</BasePath>
        <VirtualHost>default</VirtualHost>
    </HTTPProxyConnection>
    <RouteRule name="default">
        <TargetEndpoint>default</TargetEndpoint>
    </RouteRule>
</ProxyEndpoint>

عليك تعديل هذه الإعدادات بحيث يفرض ProxyEndpoint سياسة الحصة (كخطوة معالجة) قبل أن يجري الخادم الوكيل لواجهة برمجة التطبيقات أي معالجة أخرى. فإذا تجاوز أحد مطوّري البرامج الحصة المحددة، لن ترغب في إهدار أي موارد حسابية في الطلبات الإضافية.

لفرض هذه الإعدادات، يمكنك إرفاق "خطوة معالجة" بطلب PreFlow على النحو التالي:

<ProxyEndpoint name="default">
  <PreFlow>
    <Request>
      <Step><Name>QuotaPolicy</Name></Step>
    </Request>
  </PreFlow>
  <HTTPProxyConnection> 
    <BasePath>/weather</BasePath> 
    <VirtualHost>default</VirtualHost> 
  </HTTPProxyConnection> 
  <RouteRule name="default"> 
    <TargetEndpoint>default</TargetEndpoint> 
  </RouteRule> 
</ProxyEndpoint>

في بعض الأحيان، قد تحتاج إلى تنفيذ سياسة بعد إجراء بعض المعالجة الأولية الأخرى على ProxyEndpoint. على سبيل المثال، لنفترض أنّك تريد التحقّق من الحصة في تنسيق PreFlow، ثم تنفيذ مجموعة أخرى من المعالجة بعد تحديد "الحصة"، مثل تحويل الطلب من JSON إلى XML. لإجراء ذلك، أرفِق سياسة بمسار طلب PostFlow. في ما يلي نموذج لمرفق طلب PostFlow. يتم تنفيذ هذه السياسة على رسالة الطلب بعد تنفيذ جميع السياسات في PreFlow (وأي عمليات تدفق مشروطة).

<PostFlow>
  <Request>
    <Step><Name>JSONtoXMLPolicy</Name></Step>
  </Request>
</PostFlow>

فيما يلي نموذج لمرفق PostFlow للرد. يتم تنفيذ هذه السياسة على رسالة الرد. (استجابة ProxyEndpoint PostFlow هي مرحلة المعالجة النهائية قبل عرض الردّ على تطبيق العميل مقدّم الطلب).

<PostFlow>
  <Response>
    <Step><Name>XMLtoJSONPolicy</Name></Step>
  </Response>
</PostFlow>