Men-deploy API Cloud Endpoints di API Gateway

Cloud Endpoints adalah sistem pengelolaan API yang membantu Anda mengamankan, memantau, menganalisis, dan menetapkan kuota pada API Anda. Endpoints menggunakan Extensible Service Proxy (ESP) atau Extensible Service Proxy V2 Beta (ESPv2 Beta) untuk menghosting API Anda.

Saat menggunakan Endpoints, Anda memiliki tiga opsi untuk menentukan API:

Mengembangkan API dengan API Gateway

Endpoints dan API Gateway mendukung API yang dideskripsikan menggunakan spesifikasi OpenAPI, OpenAPI 2.0 atau OpenAPI 3.x. Jika Anda telah menggunakan OpenAPI untuk menentukan API Endpoints, berarti Anda juga dapat men-deploy API Endpoints di API Gateway.

Men-deploy spesifikasi OpenAPI Endpoints di API Gateway

API Gateway mendukung format dan opsi definisi spesifikasi OpenAPI yang sama seperti yang didukung oleh Cloud Endpoints untuk OpenAPI. Artinya, Anda dapat menggunakan keamanan, kuota, dan definisi lainnya yang sama dari spesifikasi OpenAPI Endpoints untuk menentukan API di API Gateway.

Satu-satunya perbedaan antara Endpoints dan API Gateway adalah cara keduanya memproses properti host dalam definisi spesifikasi OpenAPI:

  • Di Endpoints, tetapkan properti host ke bagian nama host dari URL yang dibuat saat Anda men-deploy ESP, dengan ESP adalah layanan yang digunakan untuk menghosting Endpoints API Anda.
  • Di API Gateway, hapus host atau tetapkan ke nama DNS API yang di-deploy. Penyedia API sering menyetelnya ke nama DNS saat membagikan spesifikasi OpenAPI kepada konsumen API mereka. Namun, API Gateway tidak menerapkan nilai properti host.

Misalnya, berikut adalah sebagian definisi OpenAPI yang digunakan oleh Endpoints untuk menentukan API guna mengakses layanan backend yang di-deploy pada fungsi 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: {}
...

Saat menggunakan Endpoints untuk men-deploy API, Anda:

  1. Deploy Vertex AI Search atau ESPv2 Beta, yang membuat URL yang kemudian Anda gunakan untuk mengakses API yang di-deploy. Contoh:

    https://gateway-12345-uc.a.run.app
  2. Edit spesifikasi OpenAPI untuk menetapkan properti host (di OpenAPI 2.0) atau servers.url (di OpenAPI 3.x) ke nama domain URL Vertex AI Search atau ESPv2 Beta. Contohnya

    host: gateway-12345-uc.a.run.app
  3. Deploy definisi OpenAPI ke Vertex AI Search atau ESPv2 Beta.

  4. Akses API Anda menggunakan URL Vertex AI Search atau ESPv2 Beta. Dalam definisi OpenAPI sebelumnya, elemen paths ditetapkan ke /hello sehingga Anda dapat mengakses API ini menggunakan URL berikut:

    https://gateway-12345-uc.a.run.app/hello

Untuk menggunakan definisi API yang sama guna membuat konfigurasi API untuk API Gateway, Anda dapat menghapus properti host atau servers.url sepenuhnya, atau membiarkannya di file. API Gateway tidak menerapkan nilai properti host.

URL gateway yang di-deploy, dan oleh karena itu URL yang digunakan klien Anda untuk mengakses API Anda, ditentukan saat Anda membuat gateway, dalam bentuk:

https://GATEWAY_ID-HASH.REGION_CODE.gateway.dev

dengan GATEWAY_ID adalah nama gateway, HASH adalah kode hash unik yang dihasilkan saat Anda men-deploy API, dan REGION_CODE adalah kode untuk Google Cloud region tempat Anda men-deploy gateway.

Setelah Anda men-deploy API ke instance gateway, URL yang Anda gunakan untuk mengakses /hello adalah:

https://my-gateway-a12bcd345e67f89g0h.uc.gateway.dev/hello

Untuk mengetahui informasi selengkapnya tentang men-deploy API, lihat Model Deployment API Gateway.

Untuk mengetahui informasi selengkapnya tentang cara membuat spesifikasi OpenAPI untuk definisi API Anda, lihat Ringkasan OpenAPI.

Langkah berikutnya