אתם צופים במסמכי התיעוד של Apigee Edge.
אפשר לעבור אל מסמכי התיעוד של Apigee X. מידע
דוגמאות ה-API של Apigee Edge כוללות שרתי proxy לדוגמה של API, מדיניות, קוד וכלים שממחישים את היכולות של שירותי ה-API של Apigee Edge שמתוארים בהמשך.
הוראות לשימוש בדוגמאות מופיעות במאמר שימוש בשרתי proxy לדוגמה של API.
לומדים תוך כדי עבודה
רוצים להתחיל לעבוד במהירות ולבנות בסיס ידע מוצק על Apigee Edge? ב-GitHub יש לנו ספרייה של דוגמאות ללימוד עצמי שמאפשרות לכם לפרוס, להפעיל ולעקוב במהירות אחרי כמה שרתי proxy לדוגמה. מתחילים עם שרת ה-proxy הפשוט ביותר ועוברים לשרתי proxy שממחישים אימות של מפתח API, מכסה, שמירת תשובות במטמון, טיפול בשגיאות ועוד.
אחרי שמשכפלים את המאגר ומגדירים את הסביבה (תהליך שלוקח כמה דקות), אפשר לנסות כל דוגמה בפחות מדקה. בנוסף, כל דוגמה יוצרת גרסה חדשה של אותו שרת proxy, כך שהסביבה שלכם לא תהיה עמוסה בדוגמאות רבות. אתם יכולים להחליף בין גרסאות, לפרוס מחדש גרסה אחרת בממשק הניהול ולבדוק את קוד ה-proxy בכל שלב. בנוסף, בקובץ ה-readme של כל דוגמה מוסבר בקצרה מה הדוגמה עושה ואיך היא מוגדרת.
כדאי לנסות! https://github.com/apigee/api-platform-samples/tree/master/learn-edge
דוגמאות של מתכונים ב-Docs
הוספנו דוגמאות לנושאים במדריך המתכונים של API Proxy.
| שם | תיאור | סוגי מדיניות | משאבים |
|---|---|---|---|
| javascript-cookbook | הדוגמה הבאה היא קטע קוד פשוט ב-JavaScript שמוסיף כותרות HTTP ממשתנים, ממיר דוח מזג אוויר בפורמט XML מ-JSON ל-XML ומקצץ את התוכן עבור לקוחות ניידים. | minimize.js setHeaders.js |
|
| javascript-mashup-cookbook | אפליקציית JavaScript מלאה שקוראת לממשקי API ציבוריים, משלבת תוצאות ומפיקה תגובה מועשרת לאפליקציית הלקוח. (הערה: ה-API Proxy הזה מיישם את אותה פונקציונליות כמו מדיניות ה-mashup, ומדגים שאפשר לפתור את אותה בעיה בטכניקות שונות). | JavaScript | MashItUp.js |
| java-hello | קריאה פשוטה ל-Java עם הפלט 'שלום עולם'. | JavaCallout | JavaHello.java |
| java-cookbook | ממירה את תוכן התשובה ואת הכותרות לאותיות רישיות. | JavaCallout |
ResponseUppercase.java |
| java-properties | הדגמה של שימוש במאפיינים בקריאה ל-Java. | JavaCallout | JavaProperties.java |
| java-error | הדוגמה הזו מראה דפוסי טיפול בשגיאות שאפשר להשתמש בהם בקוד של Java Callout. | JavaCallout | JavaError.java |
| policy-mashup-cookbook | אפליקציה מלאה שמשתמשת בהרכבת מדיניות כדי לקרוא לשני ממשקי API ציבוריים, משלבת את התוצאות ומפיקה תגובה מועשרת לאפליקציית הלקוח. (הערה: פרוקסי ה-API הזה מיישם את אותה פונקציונליות כמו javascript-mashup, ומראה שאפשר לפתור את אותה בעיה בטכניקות שונות). | AssignMessage ServiceCallout ExtractVariables Javascript XMLToJSON |
GenerateResponse.js |
דוגמאות לשרתי proxy ל-API
פרוקסי ה-API הבאים נמצאים ב-GitHub, ובדפי ה-readme שלהם יש תיאורים מפורטים של הדוגמאות. אם אתם רוצים לדעת איך מדיניות מסוימת פועלת בדוגמה, חפשו את המדיניות שמעניינת אתכם בעמודה 'סוגי מדיניות' שבהמשך, ואז לחצו על שם הדוגמה בעמודה 'שם'. (המדיניות מקושרת לדפי העיון שלה במסמכים).
סימוכין וכלים
בנוסף לדוגמאות של ספרי הבישול ולדוגמאות של שרתי proxy בטבלאות שלמעלה, בדוגמאות של Edge ב-GitHub יש גם את המשאבים הבאים:
| שם | תיאור | סוגי מדיניות | משאבים |
|---|---|---|---|
| regex-protection | מדיניות ההגנה מפני איומים באמצעות ביטויים רגולריים יכולה להגן על ממשקי ה-API של הקצה העורפי ועל המיקרו-שירותים מפני התקפות הזרקת SQL. | לא רלוונטי | |
| oauth-validate-key-secret | אתם מטמיעים את תהליך סוג המענק של סיסמה ב-OAuth. צריך לאמת את מפתח הלקוח ואת הסוד של האפליקציה ב-Edge לפני שקוראים לספק זהויות חיצוני כדי לאמת את פרטי הכניסה של המשתמש. | OAuthV2, אחרים | לא רלוונטי |
| condition-pattern-matching | הפרוקסי הזה מאפשר לכם לנסות ולבדוק בקלות משפטי תנאי בזרימת נתונים של פרוקסי API. | AssignMessage | לא רלוונטי |
| access-entity | הדוגמה מראה איך לאחזר פרופילים של ישויות ממאגר הנתונים של Apigee Edge. | AssignMessage AccessEntity ExtractVariables |
אין |
| apikey | הטמעה של אימות פשוט של מפתחות API | VerifyAPIKey AssignMessage Quota |
אין |
| async-callout | הדגמה של קריאה פשוטה לא סנכרונית באמצעות httpClient של JavaScript. | JavaScript | assemble_response.js callout.js |
| base64encoder | הדגמה של קריאה להכללות של JavaScript ממשאבי JavaScript בשרתי proxy ל-API. | AssignMessage Javascript |
core-min.js enc-utf16-min.js enc-base64-min.js encodeAuthHeader.js |
| conditional-policy | הטמעה של אכיפת מדיניות מותנית פשוטה. כשבקשה מכילה כותרת HTTP עם הערך responsetime:true, מדיניות מפעילה סקריפט Python שמוסיף קבוצה של מדדי ביצועים להודעת התגובה, ככותרות HTTP | סקריפט (Python) | timer.py |
| dynamic-endpoint | הטמעה של ניתוב מותנה פשוט בתרחיש קצת יותר מורכב, שבו מוגדרות שתי כתובות URL ונתיב ברירת מחדל אחד. | אין | אין |
| jira-release-notes | זהו פרוקסי ה-API שמשמש את צוות התיעוד של Apigee ליצירת הערות על גרסאות מ-Jira. | JSONToXML XSL |
releasenotes_api.xsl |
| kerberos-credential-mediation | בדוגמה הזו אפשר לראות איך לבצע תיווך של אישורי Kerberos ב-Apigee Edge. | JavaCallout | קובץ Java JAR |
| oauth-advanced | דוגמה מלאה ופעילה של תהליך הרשאה באמצעות קוד, עם Apigee Edge כשרת ההרשאות. |
GenerateAccessToken עוד הרבה אחרים... |
לדוגמה, קוד |
| oauth-client-credentials | הדגמה של נקודת קצה (endpoint) של אסימון OAuth 2.0 שמוגדרת באופן מלא עבור סוג ההרשאה של פרטי הכניסה של הלקוח. | GenerateAccessToken | אין |
| oauth-login-app | הוצא משימוש. מומלץ לעיין בדוגמה oauth-advanced במקום זאת. | ||
| oauth-validate-key-secret | המאמר מתאר טכניקה לאימות המפתח והסוד של הלקוח לפני שמתקשרים עם ספק זהויות כדי לאמת את פרטי הכניסה של המשתמש בתהליך של סוג הרשאת הסיסמה. | OAuthV2 AssignMessage ExtractVariables ServiceCallout RaiseFault |
אין |
| oauth-verify-accesstoken | הדגמה של שרת proxy של API שהוגדר לאמת אסימוני גישה מסוג OAuth 2.0 ולאמת את המכסה. | VerifyAccessToken Quota |
אין |
| oauth10a-3legged | הדגמה של הגדרת OAuth 1.0a עם שלושה רגליים. | GenerateAceessToken GenerateRequestToken ServiceCallout VerifyAccessToken |
אין |
| outbound-oauth | משתמש ב-Microsoft Azure translator API כדי לתרגם ציוצים. לשם כך, הוא מבצע קריאה יוצאת כדי לקבל אסימון גישה ל-OAuth, ואז שומר את האסימון במטמון באמצעות מדיניות השמירה במטמון של API Services, ומשתמש מחדש באסימון השמור במטמון בכל פעם שמתבצעת קריאה יוצאת. היא כוללת גם אפליקציית דפדפן להדגמה שמשמשת להפעלת שרת ה-proxy של ה-API. | AssignMessage LookupCache PopulateCache Javascript |
api-config.js api-token-get.js translate-query.js translate-results.js |
| pagination | חלוקה לעמודים של הודעת תגובה ב-XML על סמך פרמטרים של מגבלה והיסט שסופקו על ידי הלקוח | AssignMessage ExtractVariables ResponseCache VerifyApiKey XSL |
paginate.xslt |
| response-cache | הדוגמה הזו ממחישה איך לשמור במטמון תחזיות מזג אוויר ב-Edge למשך 10 דקות. | ResponseCache AssignMessage |
אין |
| simple-python | הדגמה של תרחיש פשוט של צירוף סקריפט Python בתגובה שמוסיף לה ערך של כותרת. |
סקריפט (Python) | setHeader.py |
| soap | הדגמה של טרנספורמציה של XSL שכותבת מחדש קובץ WSDL בתגובה לבקשה עם פרמטר השאילתה ?wsdl. | AssignMessage ExtractVariables Script (Python) XSL |
calculateaddress.py fixwsdl.xsl |
| סטרימינג | הדגמה של הגדרת שידור HTTP. | אין | אין |
| target-reroute | הדגמה של שימוש ב-JavaScript כדי לבחור באופן דינמי כתובת URL ליעד על סמך התוכן של הודעת בקשה. | ExtractVariables Javascript |
rewriteTargetUrl.js |
| twitter-mobile-timeline | הדוגמה הזו מראה איך להשתמש ב-JavaScript כדי להסיר פרמטרים לא נחוצים מציוצים, וכך ליצור ציר זמן יעיל בטוויטר שמתאים למכשירים ניידים עם משאבים מוגבלים. | AssignMessage Javascript |
MobileTimeline.js |
| twitter-oembed | הופך תגובות של ציר זמן (לדוגמה, מ-statuses/user_timeline.json) לתגובת oEmbed שמכילה את נתוני ציר הזמן כתוכן HTML עשיר. | AssignMessage JavaScript |
search-oembed.js |
| משתנים | הסרטון מדגים איך לחלץ ולהגדיר משתנים על סמך תוכן ההודעה ב-JSON וב-XML. | AssignMessage ExtractVariables XMLToJSON |
minimize.js |
| xmltojson | הפונקציה ממירה נתוני תגובה מ-XML ל-JSON. | XMLToJSON JSONToXML |
אין |
|
|
קובצי סכימת XML שאפשר להשתמש בהם כהפניה כשמגדירים שרתי proxy ל-API, מדיניות, מוצרי API ופרופילים של מפתחים ואפליקציות. |
||
|
|
כולל כלי פריסה, deploy.py, שמייבא פרוקסי של API לארגון ב-Apigee Edge ואז פורס אותו בסביבה שצוינה. |
||
|
|
הכלי ליצירת תמונת מצב של הארגון מאחזר את הגדרות הארגון, כולל מפתחים, מוצרי API, מארחים וירטואליים, מיפויים של מפתח/ערך וכו'. אפשר להשתמש בו כדי לגבות את הפרטים של ארגון או כדי לגלות את ההגדרות בארגון. |
Apigee-127
אם אתם מתכנתים, Apigee-127 מאפשר לכם להתחיל לתכנת פרוקסי של API באמצעות Node.js ו-Swagger. אפשר גם למצוא דוגמאות ל-a127 ב-GitHub: https://github.com/apigee-127/a127-samples.
שיתוף החוויה שלך
אפשר לשתף את החוויות שלכם בפורום המפתחים של Apigee.