פריסת ממשקי Cloud Endpoints API ב-API Gateway

Cloud Endpoints היא מערכת לניהול ממשקי API שעוזרת לכם לאבטח את ממשקי ה-API, לעקוב אחריהם, לנתח אותם ולהגדיר להם מכסות. ‫Endpoints משתמש ב-Extensible Service Proxy‏ (ESP) או ב-Extensible Service Proxy V2‏ (ESPv2) כדי לארח את ממשקי ה-API.

כשמשתמשים ב-Endpoints, יש שלוש אפשרויות להגדרת ה-API:

פיתוח ממשקי API באמצעות API Gateway

גם Endpoints וגם API Gateway תומכים ב-API שמתוארים באמצעות מפרט OpenAPI, ‏ OpenAPI 2.0 או OpenAPI 3.x. אם השתמשתם ב-OpenAPI כדי להגדיר את ממשקי ה-API של Endpoints, תוכלו גם לפרוס את ממשקי ה-API של Endpoints ב-API Gateway.

פריסת מפרטי OpenAPI של Endpoints ב-API Gateway

‫API Gateway תומך באותו פורמט של הגדרות ומפרטים של OpenAPI כמו Cloud Endpoints for OpenAPI. כלומר, אתם יכולים להשתמש באותן הגדרות אבטחה, מכסות והגדרות אחרות ממפרטי OpenAPI של Endpoints כדי להגדיר API ב-API Gateway.

ההבדל היחיד בין Endpoints לבין API Gateway הוא האופן שבו הם מעבדים את המאפיין host בהגדרת מפרט OpenAPI:

  • ב-Endpoints, מגדירים את המאפיין host לחלק של שם המארח בכתובת ה-URL שנוצרה כשפרסתם את ESP או ESPv2, כאשר ESP או ESPv2 הם השירות שמשמש לאירוח של Endpoints API.
  • ב-API Gateway, משמיטים את host או מגדירים אותו לשם ה-DNS של ה-API שנפרס. ספקי API מגדירים אותו בדרך כלל לשם ה-DNS כשהם משתפים את מפרט ה-OpenAPI עם צרכני ה-API שלהם. עם זאת, API Gateway לא אוכף את הערך של המאפיין host.

לדוגמה, הקטע הבא הוא חלק מהגדרת OpenAPI שמשמשת את Endpoints כדי להגדיר API לגישה לשירות לקצה העורפי שנפרס בפונקציות Cloud Run:

OpenAPI 2.0

swagger: '2.0'
info:
  title: Cloud Endpoints + GCF
  description: Sample API on Cloud Endpoints with a Google Cloud Functions backend
  version: 1.0.0
host: HOST
schemes:
  - https
  ...

‫OpenAPI 3.x

openapi: 3.0.4
info:
  title: Cloud Endpoints + GCF
  description: Sample API on Cloud Endpoints with a Google Cloud Functions backend
  version: 1.0.0
servers:
- url: https://HOST
  x-google-endpoint: {}
...

מידע נוסף על יצירת מפרט OpenAPI להגדרת ה-API מופיע במאמר סקירה כללית על OpenAPI.

המאמרים הבאים