פיתוח של ממשקי proxy ל-API

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

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

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

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

יצירת proxy ל-API

כדי ליצור proxy ל-API באמצעות Apigee ב-Cloud Code, צריך לוודא שיצרתם סביבת עבודה מקומית לפיתוח, ואז:

  1. מבצעים אחת מהפעולות הבאות:

    • בסביבת העבודה, מעבירים את הסמן מעל התיקייה apiproxies ולוחצים על יצירת סמל של proxy ל-API.

      הסימן + מוצג כשמציבים את הסמן מעל התיקייה apiproxies

    • בוחרים באפשרות View > Command Palette (תצוגה > לוח הפקודות) כדי לפתוח את לוח הפקודות ובוחרים באפשרות Cloud Code: Create Apigee proxy bundle (Cloud Code: יצירת חבילת proxy של Apigee).

    ייפתח האשף Create proxy.

  2. בוחרים באחת מהאפשרויות הבאות:

    סוג תיאור
    Access token-based authentication

    הוספת אימות מבוסס OAuth 2.0 ל-proxy ל-API. מערכת Apigee מוסיפה באופן אוטומטי את כללי המדיניות הבאים ל-proxy ל-API:

    • מכסה לניהול מכסה בשרת ה-proxy.
    • ‫AssignMessage כדי להסיר את מפתח ה-API שסופק בקריאה ל-API כפרמטר של שאילתה מהבקשה שמועברת לשרת העורפי.
    • ‫OAuthV2 כשיטת האימות.
    API key-based authentication

    proxy ל-API שמשתמש באימות פשוט של מפתח API. מערכת Apigee מוסיפה באופן אוטומטי את כללי המדיניות הבאים ל-proxy ל-API:

    • מכסה לניהול מכסה בשרת ה-proxy.
    • ‫VerifyAPIKey כדי לאמת מפתחות API שמוצגים על ידי אפליקציות ששולחות בקשות.
    • ‫AssignMessage כדי להסיר את מפתח ה-API שסופק בקריאה ל-API כפרמטר של שאילתה מהבקשה שמועברת לשרת העורפי.
    Echo request

    proxy ל-API שמשקף בקשות. אין בק-אנד של יעד או API לסוג הפרוקסי הזה ואין אימות. לא מוצגת בקשה לציין כתובת URL לשירות העורפי (Target (Existing API)), והגדרת נקודת היעד שמוגדרת כברירת מחדל לא נכללת.

    Simple reverse proxy

    שרת proxy של API שמעביר בקשות ליעד בקצה העורפי. הוא לא כולל אימות, ולכן הבקשות מועברות לקצה העורפי בלי בדיקות אבטחה.

    OpenAPI 3.0 spec

    יוצרים שרת proxy על ידי טעינת מפרט OpenAPI 3.0 קיים. מידע נוסף זמין באתר OpenAPI Initiative.

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

אחרי שמשלימים את השלבים באשף, התיקייה החדשה apiproxy-name מתווספת לקטע Apigee מתחת ל-apiproxies. המבנה של כל תיקיית proxy ל-API מתואר במאמר מבנה של ספריית הגדרות proxy ל-API.

בדוגמה הבאה מוצגת הגדרת ברירת המחדל שנוצרת ל-proxy ל-API שנוצר עם הסוג API key-based authentication.

מבנה התיקיות של proxy לאימות שמבוסס על מפתח API

תיאור של הגדרות ברירת המחדל מופיע במאמר הגדרות ברירת המחדל של proxy ל-API.

עיון בהגדרת ברירת המחדל של proxy ל-API

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

קובץ תצורה
שרת proxy הפוך פשוט
בקשת הד
אימות באמצעות אסימון גישה (OAuthV2)
אימות באמצעות מפתח API
proxies/default.xml
הגדרת ברירת מחדל של נקודת קצה (endpoint) של שרת Proxy.
targets/default.xml
הגדרת ברירת המחדל של נקודת הקצה של היעד.
 
impose-quota.xml
מדיניות מכסות כדי להגדיר מכסה כברירת מחדל.
   
‫remove-header-authorization.xml
AssignMessage policy כדי להסיר את הכותרת Authorization שמועברת לאימות.
   
 
remove-query-param-apikey.xml
מדיניות AssignMessage להסרת פרמטר השאילתה apikey שמועבר לאימות.
     
‫verify-api-key.xml
VerifyAPIKey policy כדי לאכוף את האימות של מפתחות API.
     
‫verify-oauth-v2-access-token.xml
מדיניות OAuthV2 לאימות אסימוני גישה מסוג OAuth V2.
   
 

העלאת חבילת proxy ל-API

כדי להעלות חבילת proxy ל-API אל Apigee ב-Cloud Code:

  1. מבצעים אחת מהפעולות הבאות:

    • בסביבת העבודה של Apigee, מעבירים את סמן העכבר מעל התיקייה apiproxies ולוחצים על ייבוא סמל של חבילת proxy ל-API.

    • בוחרים באפשרות תצוגה > לוח הפקודות כדי לפתוח את לוח הפקודות, ואז בוחרים באפשרות Cloud Code: ייבוא חבילת Apigee proxy.

  2. מנווטים לחבילת ה-proxy ל-API שרוצים להעלות ולוחצים על Select (בחירה). חבילת ה-proxy ל-API צריכה להיות מובנית כמו שמתואר ב-מבנה הספריות של הגדרת proxy ל-API.

  3. (אופציונלי) כברירת מחדל, השם של קובץ ה-ZIP בלי הסיומת משמש כשם של ה-proxy ל-API. אם השם לא ייחודי, תתבקשו להזין שם ייחודי.

התיקייה apiproxy-name שהועלתה מתווספת לקטע apiproxies בסביבת העבודה.

ניהול נקודות קצה של שרת proxy

כפי שמתואר במאמר מהו proxy ל-API?, נקודת קצה של proxy (ProxyEndpoint) מגדירה את האופן שבו אפליקציות לקוח צורכות את ממשקי ה-API שלכם. מגדירים את נקודת הקצה של ה-proxy כדי להגדיר את כתובת ה-URL של ה-proxy ל-API. נקודת הקצה של ה-proxy גם קובעת אם האפליקציות ניגשות ל-proxy ל-API דרך HTTP או HTTPS. אתם יכולים לצרף מדיניות לנקודת הקצה של ה-proxy כדי לאכוף אבטחה, בדיקות מכסה וסוגים אחרים של בקרת גישה והגבלת קצב.

יוצרים ומגדירים נקודות קצה של שרת proxy כמו שמתואר בקטעים הבאים.

יצירת נקודות קצה של שרת proxy

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

כדי ליצור נקודת קצה של שרת proxy באמצעות Apigee ב-Cloud Code:

  1. בסביבת העבודה של Apigee, מבצעים אחת מהפעולות הבאות:

    • מעבירים את הסמן מעל אחת מהתיקיות הבאות, לוחצים על סמל של יצירת נקודת קצה של שרת proxy ובוחרים באפשרות יצירת נקודת קצה של שרת proxy:
      • apiproxy-name חבילת proxy
      • apiproxy-name/apiproxy
    • מעבירים את הסמן מעל התיקייה apiproxy-name/apiproxy/proxies ולוחצים על סמל של יצירת נקודת קצה של שרת proxy.

    ייפתח האשף Create proxy endpoint.

  2. מזינים את הערכים להנחיות הבאות. אחרי כל פעולה מקישים על Enter כדי לאשר ולהמשיך או על Esc כדי לבטל.

    שדה תיאור
    Proxy endpoint name השם שמשמש לזיהוי נקודת הקצה של ה-proxy.
    API proxy base path חלק מכתובת ה-URL שמשמשת לשליחת בקשות ל-API. מערכת Apigee משתמשת בכתובת ה-URL כדי להתאים בקשות נכנסות ולנתב אותן אל שרת ה-API המתאים.
    Target endpoint בוחרים באפשרות no target או באפשרות default. מידע נוסף זמין במאמר רכיבי ההגדרה של ProxyEndpoint.

נקודת הקצה נוצרת ומתווספת לתיקייה apiproxy-name/apiproxy/proxies בקטע Apigee, ונפתחת בעורך. מגדירים את נקודת הקצה של השרת הפרוקסי, כמו שמתואר בקטע הבא.

הגדרת נקודות קצה של שרת Proxy

כדי להגדיר נקודות קצה של שרת proxy, אפשר לעיין בסעיפים הבאים:

ניהול נקודות קצה של היעד

כפי שמתואר במאמר מהו שרת proxy ל-API?, נקודת קצה של יעד (TargetEndpoint) מגדירה את אופן האינטראקציה של שרת ה-proxy ל-API עם שירותי הקצה העורפי. מגדירים את נקודת הקצה של היעד להעברת בקשות לשירות הבק-אנד המתאים, ומגדירים את הגדרות האבטחה, פרוטוקול HTTP או HTTPS ופרטי חיבור אחרים. אתם יכולים לצרף מדיניות לנקודת הקצה של היעד כדי לוודא שהודעות התגובה יהיו בפורמט המתאים לאפליקציה ששלחה את הבקשה הראשונית.

יוצרים ומגדירים נקודות קצה של יעד כמו שמתואר בקטע הזה.

יצירת נקודות קצה ליעד

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

יוצרים נקודות קצה (endpoints) לטירגוט, לפי הצורך.

כדי ליצור נקודת קצה של יעד באמצעות Apigee ב-Cloud Code:

  1. בסביבת העבודה של Apigee, מבצעים אחת מהפעולות הבאות:

    • ממקמים את הסמן מעל אחת מהתיקיות הבאות, לוחצים על יצירת סמל של נקודת קצה ליעד ובוחרים באפשרות יצירת נקודת קצה של יעד:
      • apiproxy-name חבילת proxy
      • apiproxy-name/apiproxy
    • מעבירים את הסמן מעל התיקייה apiproxy-name/apiproxy/targets ולוחצים על יצירת סמל של נקודת קצה ליעד.

    ייפתח האשף Create target endpoint.

  2. מבצעים את השלבים הבאים בהתאם לסוג נקודת היעד שרוצים ליצור:

    סוג שלבים
    יעד חיצוני מסוג HTTP(s)

    כדי להגדיר יעד חיצוני מסוג HTTP(s):

    1. בוחרים באפשרות יעד HTTP(s).
    2. מזינים את השם של נקודת הקצה של היעד בשדה Target endpoint name (שם נקודת הקצה של היעד).
    3. מזינים את כתובת ה-URL של שירות הקצה העורפי שהנקודה הזו של קצה היעד מפעילה בשדה Backend target URL.

    מידע נוסף זמין במאמר איך קובעים את כתובת ה-URL של נקודת הקצה של היעד.

    שרשור שרתי proxy

    כדי להגדיר proxy של API שנפרס באופן מקומי כיעד:

    1. בוחרים באפשרות שרשור שרתי proxy.
    2. מזינים את השם של נקודת הקצה של היעד בשדה Target endpoint name (שם נקודת הקצה של היעד).
    3. בוחרים שרת proxy ל-API.
    4. בוחרים את נקודת הקצה של ה-proxy.

    מידע נוסף על שרשור של שרתי proxy

    יעד עם איזון עומסים

    כדי להגדיר יעד מאוזן עומסים באמצעות שרתי יעד שמוגדרים בסביבה:

    1. בוחרים באפשרות יעד עם איזון עומסים.
    2. מזינים את השם של נקודת הקצה של היעד בשדה Target endpoint name (שם נקודת הקצה של היעד).

    מידע נוסף זמין במאמר הגדרת TargetEndpoint לאיזון עומסים בין TargetServers עם שמות.

נקודת היעד נוצרת, נוספת לתיקייה apiproxy-name/apiproxy/targets ונפתחת בעורך. מגדירים את נקודת הקצה של היעד, כמו שמתואר בקטע הבא.

הגדרת נקודות קצה לטירגוט

מגדירים את נקודות הקצה של היעד, כמו שמתואר בנושאים הבאים.