צירוף מדיניות ל-ProxyEndpoint או ל-TargetEndpoint Flow

הדף הזה רלוונטי ל-Apigee ול-Apigee Hybrid.

לעיון במסמכי התיעוד של Apigee Edge

כללי מדיניות לא מופעלים עד שמצרפים אותם ל-Flow. אפשר ליצור קובץ מצורף של מדיניות על ידי מתן שם למדיניות בהגדרת שלב.

בחירת נקודת ההצמדה היא קריטית להתנהגות של proxy ל-API. לדוגמה, אם מצמידים את מדיניות המכסה ל-Flow של תגובה, המכסה תיאכף אחרי שהודעת הבקשה נשלחה לשירות לקצה העורפי. זה יבטל את המטרה של החלת מדיניות בנושא מכסת משאבים. לכן, צריך לצרף את מדיניות המכס כשלב עיבוד בבקשה Flow.

הפורמט של קובץ מדיניות מצורף הוא:

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

לדוגמה:

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

כדי לצרף מדיניות ל-Flow, מוסיפים את הגדרת השלב לרכיב המתאים של בקשה או תגובה ב-Flow בהגדרות של ProxyEndpoint או TargetEndpoint.

אפשר לצרף מדיניות לזרימת בקשה או תגובה. תהליכי הבקשה והתגובה מחולקים לתהליכי 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 יאכוף מדיניות של מכסה (כשלב עיבוד) לפני ש-proxy ל-API מבצע עיבוד אחר. אם מפתח חרג ממכסה, לא כדאי לבזבז משאבי מחשוב על בקשות נוספות.

כדי לאכוף את ההגדרה הזו, מצרפים שלב עיבוד ל-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 attachment. המדיניות הזו תופעל בהודעת הבקשה אחרי שכל סוגי המדיניות ב-PreFlow (ובכל זרימות מותנות) יופעלו.

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

זוהי דוגמה לקובץ מצורף של PostFlow. המדיניות הזו תופעל על הודעת התגובה. (התגובה של ProxyEndpoint PostFlow היא שלב העיבוד הסופי לפני שהתגובה מוחזרת לאפליקציית הלקוח ששלחה את הבקשה).

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