Cloud Endpoints Frameworks הוא web framework עבור סביבות זמן הריצה של Python 2.7 ו-Java 8 בתקן App Engine. Cloud Endpoints Frameworks מספקת את הכלים והספריות שמאפשרים ליצור ממשקי API ל-REST וספריות לקוח לאפליקציה.
בדומה למסגרות אינטרנט אחרות, Endpoints Frameworks מטפלת בפרטי התקשורת ברמה הנמוכה של בקשות ותגובות HTTP עבור האפליקציה שלכם. כשלקוח שולח בקשה ל-API שלכם, Endpoints Frameworks מעביר את כתובת ה-URL של הבקשה לפונקציה או לשיטה בקוד שמטפלות בבקשה. Endpoints Frameworks ממיר את ערך ההחזרה ל-JSON ושולח את התגובה. מוסיפים מטא-נתונים (באמצעות הערות ב-Java ודקורטורים ב-Python) לקוד המקור. הנתונים האלה מגדירים את המשטח של ממשקי ה-API ל-REST באפליקציה שלכם.
Java
בדוגמה של הקוד, ההערות מתחילות בתו @.
Python
בדוגמה של הקוד, הדקורטורים מתחילים בתו @.
עם Endpoints Frameworks, אתם לא צריכים לפרוס שרת אינטרנט של צד שלישי (כמו Apache Tomcat או Gunicorn) עם האפליקציה שלכם. מוסיפים הערות או מקשטים את הקוד ופורסים את האפליקציה כרגיל בסביבה הרגילה של App Engine.
ניהול API
Extensible Service Proxy (ESP) מספק תכונות לניהול API עבור Endpoints for OpenAPI ו-Endpoints for gRPC. ה-ESP פועל בקונטיינר לצד כל מופע של ה-Backend.
בזמן הפיתוח של Endpoints Frameworks, סביבת App Engine הרגילה לא תמכה בפריסות של כמה קונטיינרים, ולכן Endpoints Frameworks לא משתמש ב-ESP. במקום זאת, Endpoints Frameworks כולל שער API מובנה, שמספק תכונות לניהול API שדומות לתכונות ש-ESP מספק ל-Endpoints for OpenAPI ול-Endpoints for gRPC.
Endpoints Frameworks מיירט את כל הבקשות ומבצע את כל הבדיקות הנדרשות (כמו אימות) לפני העברת הבקשה אל קצה העורפי של ה-API. כששרת הקצה העורפי מגיב, Endpoints Frameworks אוסף ומדווח על נתוני טלמטריה. אפשר לראות את המדדים של ה-API בדף Endpoints Services במסוף Google Cloud .
אתם יכולים להשתמש ב-Endpoints Frameworks עם או בלי פונקציונליות של ניהול API. השימוש ב-Endpoints Frameworks ללא פונקציונליות של ניהול API מוצע ללא תשלום. החיוב על הפונקציונליות של ניהול ממשקי API מתבצע בהתאם לתמחור של Endpoints.
מגבלות
- Endpoints Frameworks נתמך רק בסביבות זמן הריצה של Python 2.7 ו-Java 8 ב-App Engine Standard.
- Endpoints Frameworks לא תומך בסביבות זמן הריצה Node.js, PHP ו-Go בסביבת App Engine סטנדרטית.
- Endpoints Frameworks לא תומך בסביבה הגמישה של App Engine.
- Endpoints Frameworks לא תומך בפונקציות של Cloud Run, ב-Compute Engine וב-Google Kubernetes Engine.
המאמרים הבאים
מידע נוסף על ההבדלים בין ESP לבין Endpoints Frameworks זמין במאמר השוואה בין Extensible Service Proxy לבין Endpoints Frameworks.
למידע על ספריות וכלים ספציפיים לשפה:
כדי ללמוד איך להגדיר ולפרוס API לדוגמה ואיך לשלוח אליו בקשות, אפשר לעיין במאמרים הבאים: