שרת proxy של שירות SOAP

כרגע מוצג התיעוד של Apigee Edge.
כניסה למסמכי התיעוד של Apigee X.
מידע

מה תלמדו

במדריך הזה תלמדו:

  • יצירת שרת proxy ל-Edge API מקובץ WSDL.
  • חשוב להכיר את ההבדל בין סוג שרת proxy של RESTful SOAP לבין שרת proxy של SOAP מגשר.

במדריך הזה תלמדו איך להציב שרת proxy של Edge API מול שירות אינטרנט שמבוסס על SOAP.

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

מה הדרישות כדי להצטרף לתוכנית?

יצירת שרת ה-proxy

כאן צריך ש-Edge ייצור את שרת ה-proxy שימוקם מול שירות SOAP. יש שני סוגים של שרתי proxy ב-SOAP API:

  • סוג ה-proxy REST-SOAP-REST יוצר API RESTful חדש עם שכבת תרגום ל-SOAP. הלקוחות קוראים לשירות הזה כמו שקוראים לשירותי RESTful אחרים, ומעבירים את הפרמטרים של השאילתות שדרושים לשירות הקצה העורפי. כש-Edge מתורגמת למטען הייעודי (payload) של SOAP, השירות נדרש.
  • סוג שרת ה-proxy של שרת proxy למעבר מאפשר ללקוחות פשוט להעביר במטען ייעודי (payload) של SOAP. כך אפשר ליהנות מקריאות שירות של SOAP באמצעות תכונות הניהול של Edge.

Edge

כדי לשרת proxy של שירות SOAP באמצעות ממשק המשתמש של Edge:

  1. נכנסים לאתר apigee.com/edge.
  2. בסרגל הניווט הימני, בוחרים באפשרות פיתוח > שרתי proxy של API.
  3. לוחצים על +שרת Proxy.
  4. לוחצים על שירות SOAP.
  5. בדף הפרטים של שרת ה-proxy, מזינים את הפרטים הבאים:

    שדה תיאור
    מקור WSDL

    בוחרים באפשרות: כתובת URL

    מעתיקים את כתובת ה-URL הבאה של WSLD ומדביקים אותה בשדה הזנת כתובת URL:

    https://ws.cdyne.com/delayedstockquote/delayedstockquote.asmx?wsdl

    קליק: אימות

    Apigee Edge מקבל את קובץ ה-WSDL וקורא אותו כדי לגלות את רשימת הפעולות שנתמכות על ידי שירות SOAP.

    שם

    השאר ללא שינוי: delayedstockquote

    זהו השם של שרת ה-proxy של ה-API שאתם יוצרים.

    נתיב בסיסי השאר ללא שינוי: /delayedstockquote
    תיאור אפשר להוסיף תיאור, למשל: שרת proxy ל-WSDL API של הצעת מחיר
  6. לוחצים על הבא.
  7. בדף כללי מדיניות נפוצים, בקטע אבטחה: הרשאה, בוחרים באפשרות עבר (ללא הרשאה).
  8. לוחצים על הבא.
  9. בדף פעולות WSDL, בוחרים באפשרות: REST to SOAP to REST.

    אחרי שבוחרים את סוג ה-proxy, Edge מציג את רשימת הפעולות שעבורן הוא ייצור נתיבי API ל-REST. הרשימה הזו מאפשרת לבחור מבין הפעולות שמופיעות ב-WSDL (אם יש קבוצה מסוימת שאתם מחפשים). שימו לב שבטבלה מוצגים גם משאבים שלקוח REST יכול להשתמש בהם כדי לקרוא לשירות SOAP בקצה העורפי.

    משאירים את כל שאר הבחירות בדף ללא שינוי.

  10. לוחצים על הבא.
  11. כדי לאשר את ברירות המחדל של המארח הווירטואלי, לוחצים על הבא.
  12. בדף תקציר, בקטע 'פריסה אופציונלית', לוחצים על בדיקה ואז על יצירה ופריסה.

    Edge יוצרת שרת proxy ל-RESTful API ופורסת אותו בסביבה test. מה-WSDL נקבעות פעולות השירות הנתמכות, הפרמטרים של הקלט וכו'. Edge מציע את שיטת ה-HTTP שבה צריך להשתמש לכל פעולה. בדרך כלל, Edge מתרגם פעולות לבקשות GET, מפני שיש להן היתרון של יכולת שמירה במטמון. Edge גם מגדירה את נקודת הקצה של היעד לקצה העורפי, שמשתנה בהתאם לפעולת SOAP.

    אין צורך לבצע התאמה אישית של שרת ה-Proxy החדש של ה-API (ולא מופיע במדריך הזה). אפשר להמשיך לבדיקה של שרת ה-API החדש.

Classic Edge (ענן פרטי)

כדי לשרת proxy של שירות SOAP באמצעות ממשק המשתמש הקלאסי של Edge:

  1. נכנסים אל http://ms-ip:9000. ms-ip הוא כתובת ה-IP או שם ה-DNS של הצומת של שרת הניהול.
  2. בסרגל הניווט העליון, בוחרים באפשרות APIs > API Proxies (ממשקי API > ממשקי API).
  3. לוחצים על + API Proxy.
  4. לוחצים על שירות SOAP.
  5. בדף הפרטים של שרת ה-proxy, מזינים את הפרטים הבאים:

    שדה תיאור
    WSDL

    בוחרים באפשרות: כתובת URL לדוגמה.

    לאחר מכן בוחרים:
    ...delayedstockquote.asmx?WSDL

    קליק: אימות

    Apigee Edge מקבל את קובץ ה-WSDL וקורא אותו כדי לגלות את רשימת הפעולות שנתמכות על ידי שירות SOAP.

    שם שרת Proxy

    הזנת: delayedstockquote

    זה השם של שרת ה-proxy שיוצרים.

    נתיב בסיס של שרת Proxy ותיאור משאירים כפי שהם.
  6. לוחצים על הבא.
  7. בדף WSDL, בוחרים את האפשרויות הבאות:
    בשדה הזה עשה זאת
    סוג שרת ה-API של ה-API

    בוחרים באפשרות: REST to SOAP to REST

    אחרי שבוחרים את סוג ה-proxy, Edge מציג את רשימת הפעולות שעבורן הוא ייצור נתיבי API ל-REST, כפי שמוצג כאן. ברשימה הזו אפשר לבחור מבין הפעולות שמופיעות ב-WSDL (אם יש קבוצה מסוימת שמחפשים). שימו לב שבטבלה מוצגים גם משאבים שלקוח REST יכול להשתמש בהם כדי לקרוא לשירות SOAP בקצה העורפי.

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

    סוג היציאה: DelayedStockQuoteSoap יש לבחור את כל שלוש הפעולות של WSDL. משאירים את שאר ההגדרות ללא שינוי.

  8. לוחצים על הבא.
  9. בדף 'אבטחה', בוחרים באפשרות מעבר (ללא).
  10. לוחצים על הבא.
  11. מאשרים את ברירות המחדל של המארח הווירטואלי ולוחצים על הבא.
  12. בדף Build, מאשרים את ברירות המחדל ולוחצים על בנייה ופריסה כדי ש-Edge יתחיל ליצור את שרת ה-proxy.

    Edge יוצר שרת proxy ל-RESTful API. מה-WSDL נקבעות פעולות השירות הנתמכות, הפרמטרים של הקלט וכו'. Edge מציע את שיטת ה-HTTP שבה צריך להשתמש לכל פעולה. בדרך כלל, Edge מתרגם פעולות לבקשות GET, מפני שיש להן היתרון של יכולת שמירה במטמון. Edge גם מגדירה את נקודת הקצה של היעד לקצה העורפי, שמשתנה בהתאם לפעולת SOAP.

    אין לך מה לעשות אם לא מבצעים התאמה אישית של שרת ה-Proxy החדש (ולא מופיע במדריך הזה). אפשר להמשיך לבדיקה של שרת ה-proxy החדש.

בדיקת שרת ה-proxy

כדי לנסות את שרת ה-proxy שיצרתם, פותחים שורת פקודה ומשתמשים ב-cURL. מקלידים את הפקודה שלמטה, כאשר:

  • ORG הוא השם של ארגון Edge שבו יצרת את שרת ה-proxy.
  • ENV היא הסביבה שאליה נפרס שרת ה-proxy.
  • הדומייןDOMAIN תואם למופע של Edge שבו אתה משתמש.
curl "https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

לדוגמה, אם הארגון שלכם הוא docfood, הסביבה היא test ואתם משתמשים בענן של Edge Enterprise, מריצים את הפקודה הבאה:

curl "https://docfood-test.apigee.net/delayedstockquote/quote?StockSymbol=GOOG&LicenseKey=0"

אם הזנת GOOG לפרמטר השאילתה StockSymbol, אתה אמור לקבל את המחיר הנוכחי של מניית Alphabet Inc. Class C. לדוגמה:

{  
   "GetQuoteResponse":{  
      "GetQuoteResult":{  
         "StockSymbol":"GOOG",
         "LastTradeAmount":819.55,
         "LastTradeDateTime":"2017-02-13T14:33:00",
         "StockChange":5.88,
         "OpenAmount":816.0,
         "DayHigh":820.96,
         "DayLow":815.49,
         "StockVolume":785064,
         "PrevCls":813.67,
         "ChangePercent":"+0.72%",
         "FiftyTwoWeekRange":"663.28 - 841.95",
         "EarnPerShare":27.88,
         "PE":29.4,
         "CompanyName":"Alphabet Inc.",
         "QuoteError":false
      }
   }
}

קבלת המפרט של OpenAPI שנוצר באופן אוטומטי

כששרתי Proxy לשירות SOAP באמצעות "REST to SOAP to REST", Edge יוצר באופן אוטומטי OpenAPI Specification. אפשר להשתמש במפרט OpenAPI כדי ליצור תיעוד של ה-API עבור ה-API.

כדי לקבל את מפרט OpenAPI, יש להיכנס לכתובת ה-URL הבאה:

curl https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/openapi.json

קרדיט נוסף: איך בודקים באילו פרמטרים של משאב, פועל ושאילתה כדאי להשתמש?

בקריאה ל-API לבדיקה, השתמשת במשאב ספציפי ובפרמטרים של שאילתה בקריאה ל-cURL לשירות ה-SOAP בקצה העורפי. אבל איך תגלו זאת בעצמכם?

משאב ופועל

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

בכרטיסייה פיתוח של שרת ה-API של שרת ה-API, בחלונית הניווט הימנית תופיע רשימה של תהליכי עבודה בקטע'נקודות קצה של שרת Proxy'. לוחצים על התהליך שמעניין אתכם. לדוגמה, התהליך GetQuote יכול להיות מועמד טוב. לאחר מכן מציגים את ה-XML בחלונית Code, שבה מוצגים נתיב המשאב והפועל לזרימה ברכיב <Condition>: /quote ו-GET.

פרמטרים של שאילתה

אחרי שבחרתם בתהליך GetQuote, לוחצים על המדיניות הראשונה בתצוגת התהליך הגרפית. זו צריכה להיות מדיניות לחילוץ משתנים שמתעדת פרמטרים של שאילתה שצפויים לעבור: StockSymbol ו-LicenseKey. (אם תחפשו באינטרנט את שירות SOAP, תראו מה צריך להעביר עבור LicenseKey).

הפרמטרים של השאילתות שתועדו נשמרים כמשתנים, ובמדיניות הבאה משתמשים בהם כדי ליצור את הודעת ה-SOAP.