אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X. מידע
מה תלמדו
במדריך הזה תלמדו:
- יצירת proxy ל-API של Edge מקובץ WSDL.
- הסבר על ההבדל בין סוג פרוקסי RESTful SOAP לבין פרוקסי pass-through SOAP.
במדריך הזה תלמדו איך להציב שרת proxy ל-API של Edge לפני שירות אינטרנט מבוסס SOAP.
במדריך הזה מוסבר איך ליצור ממשק API חדש מבוסס-REST לפני שירות מבוסס-SOAP. למרות שלא מתואר כאן בפירוט, אפשר גם ליצור שרת proxy מסוג pass-through שמקבל מטען ייעודי (payload) של SOAP ומעביר אותו לשירות לקצה העורפי.
הדרישות
- חשבון Apigee Edge. אם עדיין אין לכם חשבון, תוכלו להירשם באמצעות ההוראות שבמאמר יצירת חשבון Apigee Edge.
יצירת ה-proxy
בשלב הזה, Edge ייצור את ה-proxy שימוקם לפני שירות SOAP. יש שני סוגים של שרתי proxy של SOAP API:
- סוג ה-proxy REST-SOAP-REST יוצר API חדש בארכיטקטורת REST עם שכבת תרגום ל-SOAP. הלקוחות קוראים לזה כמו שהם קוראים לשירותים אחרים של RESTful, ומעבירים את פרמטרים של השאילתה שנדרשים לשירות הקצה העורפי. Edge מתרגם את זה למטען הייעודי (payload) של SOAP שהשירות מצפה לו.
- סוג ה-Proxy Pass-through proxy מאפשר ללקוחות פשוט להעביר מטען ייעודי (payload) של SOAP. זו דרך להפיק תועלת מתכונות הניהול של Edge בקריאות לשירות SOAP.
Edge
כדי להגדיר שרת proxy לשירות SOAP באמצעות ממשק המשתמש של Edge:
- נכנסים לחשבון בכתובת apigee.com/edge.
- בסרגל הניווט הימני, בוחרים באפשרות פיתוח > שרתי proxy של API.
- לוחצים על +Proxy (שרת proxy).
- לוחצים על שירות SOAP.
- בדף פרטי השרת הפרוקסי, מזינים את הפרטים הבאים:
שדה תיאור מקור WSDL בוחרים באפשרות: כתובת URL
מעתיקים ומדביקים את כתובת ה-URL הבאה של WSLD בשדה Enter URL (הזנת כתובת URL):
https://ws.cdyne.com/delayedstockquote/delayedstockquote.asmx?wsdl
לוחצים על אימות.
Apigee Edge מקבל את קובץ ה-WSDL וקורא אותו כדי לגלות את רשימת הפעולות ששירות ה-SOAP תומך בהן.
שם להשאיר את ההגדרה כמו שהיא:
delayedstockquoteזהו השם של proxy ל-API שאתם יוצרים.
נתיב בסיסי להשאיר את ההגדרה כמו שהיא: /delayedstockquoteתיאור אפשר להוסיף תיאור, למשל: Stock quote WSDL API Proxy - לוחצים על הבא.
- בדף מדיניות נפוצה, בקטע אבטחה: הרשאה, בוחרים באפשרות העברה (ללא הרשאה).
- לוחצים על הבא.
- בדף WSDL operations (פעולות WSDL), בוחרים באפשרות REST to SOAP to REST (מ-REST ל-SOAP ל-REST).
אחרי שבוחרים את סוג ה-proxy, מוצגת ב-Edge רשימת הפעולות שעבורן ייווצרו נתיבי API בארכיטקטורת REST. הרשימה הזו מאפשרת לכם לבחור מבין הפעולות שנמצאות ב-WSDL (אם יש לכם קבוצה מסוימת שאתם מחפשים). שימו לב שבטבלה מוצגים גם משאבים שלקוח REST יכול להשתמש בהם כדי לקרוא לשירות ה-SOAP של ה-backend.
משאירים את כל שאר הבחירות בדף כמו שהן.
- לוחצים על הבא.
- לוחצים על הבא כדי לאשר את הגדרות ברירת המחדל של המארח הווירטואלי.
- בדף סיכום, בקטע 'פריסה אופציונלית', לוחצים על בדיקה ואז על יצירה ופריסה.
Edge יוצר proxy ל-API בארכיטקטורת RESTful ופורס אותו בסביבת
test. מתוך ה-WSDL, המערכת קובעת את הפעולות הנתמכות של השירות, פרמטרים של קלט וכן הלאה. Edge מציע באיזו שיטת HTTP להשתמש לכל פעולה. בדרך כלל, Edge מתרגם פעולות לבקשות GET, שהיתרון שלהן הוא שאפשר לשמור אותן במטמון. Edge גם מגדיר את נקודת הקצה של יעד ה-Backend, שיכולה להיות שונה לכל פעולת SOAP.אלא אם אתם מבצעים התאמה אישית של ה-proxy ל-API החדש (ואתם לא עושים את זה במדריך הזה), זה כל מה שצריך לעשות. אפשר להמשיך לבדיקה של proxy ל-API החדש.
Classic Edge (ענן פרטי)
כדי להגדיר שרת proxy לשירות SOAP באמצעות ממשק המשתמש הקלאסי של Edge:
- מתחברים אל
http://ms-ip:9000, כאשר ms-ip היא כתובת ה-IP או שם ה-DNS של צומת שרת הניהול. - בסרגל הניווט העליון, בוחרים באפשרות ממשקי API > שרתי proxy ל-API.
- לוחצים על + API Proxy.
- לוחצים על שירות SOAP.
- בדף פרטי השרת הפרוקסי, מזינים את הפרטים הבאים:
שדה תיאור WSDL בוחרים באפשרות כתובת URL לדוגמה.
ואז בוחרים באפשרות:
...delayedstockquote.asmx?WSDLלוחצים על אימות.
Apigee Edge מקבל את קובץ ה-WSDL וקורא אותו כדי לגלות את רשימת הפעולות ששירות ה-SOAP תומך בהן.
שם שרת ה-Proxy מזינים:
delayedstockquoteזהו השם של ה-proxy שאתם יוצרים.
נתיב בסיס של שרת proxy ותיאור להשאיר את התלונה כפי שהיא. - לוחצים על הבא.
- בדף WSDL, בוחרים באפשרויות הבאות:
בשדה הזה do this סוג ה-API Proxy בוחרים באפשרות: REST to SOAP to REST
אחרי שבוחרים את סוג ה-proxy, מוצגת ב-Edge רשימת הפעולות שעבורן ייווצרו נתיבי API בארכיטקטורת REST, כמו שמוצג כאן. הרשימה הזו מאפשרת לכם לבחור מבין הפעולות שנמצאות ב-WSDL (אם יש לכם קבוצה מסוימת שאתם מחפשים). שימו לב שבטבלה מוצגים גם משאבים שלקוח REST יכול להשתמש בהם כדי לקרוא לשירות ה-SOAP של ה-backend.
בשלב הזה, פשוט משאירים את קבוצת הפעולות הראשונה מסומנת.
סוג החיבור: DelayedStockQuoteSoap בוחרים את כל שלוש הפעולות של WSDL. משאירים את ההגדרות האחרות כמו שהן.
- לוחצים על הבא.
- בדף 'אבטחה', בוחרים באפשרות העברה (ללא).
- לוחצים על הבא.
- מאשרים את הגדרות ברירת המחדל של המארח הווירטואלי ולוחצים על הבא.
- בדף Build (בנייה), מאשרים את אפשרויות ברירת המחדל ולוחצים על Build and Deploy (בנייה ופריסה) כדי ש-Edge יתחיל ליצור את ה-proxy.
Edge יוצר proxy ל-API מסוג RESTful. מתוך ה-WSDL, המערכת קובעת את הפעולות הנתמכות של השירות, פרמטרים של קלט וכן הלאה. Edge מציע באיזו שיטת HTTP להשתמש לכל פעולה. בדרך כלל, Edge מתרגם פעולות לבקשות GET, שהיתרון שלהן הוא שאפשר לשמור אותן במטמון. בנוסף, Edge מגדיר את נקודת הקצה של יעד ה-Backend, שיכולה להשתנות בהתאם לפעולת ה-SOAP.
אלא אם אתם מבצעים התאמה אישית של ה-proxy החדש (ואתם לא עושים את זה במדריך הזה), זה כל מה שצריך לעשות. אפשר להמשיך לבדיקת ה-proxy החדש.
בדיקת הפרוקסי
כדי לנסות את ה-proxy שיצרתם, פותחים שורת פקודה ומשתמשים ב-cURL. מקלידים את הפקודה שבהמשך, כאשר:
- ORG הוא השם של הארגון ב-Edge שבו יצרתם את ה-proxy.
- ENV היא הסביבה שבה נפרס שרת ה-Proxy.
- הדומיין תואם למופע 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, אמור להתקבל המחיר הנוכחי של מניות מסוג C של Alphabet Inc. לדוגמה:
{
"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 שנוצר באופן אוטומטי
כשמגדירים שירות SOAP באמצעות פרוקסי מסוג REST to SOAP to REST, Edge יוצר באופן אוטומטי מפרט OpenAPI. אפשר להשתמש במפרט OpenAPI כדי ליצור מאמרי העזרה של ה-API עבור ה-API.
כדי לקבל את מפרט OpenAPI, פשוט עוברים לכתובת ה-URL הזו:
curl https://{ORG}-{ENV}.{DOMAIN}/delayedstockquote/openapi.jsonנקודות בונוס: איך אפשר לדעת באיזה משאב, פועל ופרמטרים של שאילתה צריך להשתמש?
במצב קריאה ל-API לבדיקה, השתמשתם במשאב ספציפי ובפרמטרים של שאילתה בקריאת cURL לשירות SOAP של ה-Backend. אבל איך אפשר לדעת את זה לבד?
משאב ופועל
באשף של ה-proxy ל-API, כשיוצרים את ה-proxy, אפשר לראות איך פעולות ה-SOAP ממופות לפעלים ולמשאבים של ה-API. אבל אם לא רשמתם אותם, כך תוכלו לגלות אותם אחרי יצירת השרת הפרוקסי.
בכרטיסייה Develop של ה-API proxy, בחלונית הניווט הימנית, תופיע רשימה של רכיבי Flow בקטע Proxy Endpoints. לוחצים על התהליך שרוצים לראות. לדוגמה,
התהליך GetQuote הוא מועמד טוב. לאחר מכן מעיינים ב-XML בחלונית Code (קוד),
שבה מוצגים נתיב המשאב והפועל של התהליך ברכיב <Condition>:
/quote ו-GET.

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

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