Implementar APIs Cloud Endpoints no API Gateway

O Cloud Endpoints é um sistema de gestão de APIs que ajuda a proteger, monitorizar, analisar e definir quotas nas suas APIs. Os Endpoints usam o Extensible Service Proxy (ESP) ou o Extensible Service Proxy V2 Beta (ESPv2 Beta) para alojar as suas APIs.

Quando usa o Endpoints, tem três opções para definir a sua API:

Desenvolver APIs com o API Gateway

Os Endpoints e o API Gateway suportam APIs descritas através da especificação OpenAPI, OpenAPI 2.0 ou OpenAPI 3.x. Se usou a OpenAPI para definir as suas APIs Endpoints, isto significa que também pode implementar as suas APIs Endpoints no API Gateway.

Implementar especificações OpenAPI do Endpoints no API Gateway

O API Gateway suporta o mesmo formato e opções de definição da especificação OpenAPI que são suportados pelo Cloud Endpoints para OpenAPI. Isto significa que pode usar a mesma segurança, quota e outras definições das especificações da OpenAPI dos Endpoints para definir uma API no API Gateway.

A única diferença entre os Endpoints e o API Gateway é a forma como processam a propriedade host na definição da especificação OpenAPI:

  • Em Endpoints, defina a propriedade host para a parte do nome do anfitrião do URL criado quando implementou o ESP, em que ESP é o serviço usado para alojar a sua API Endpoints.
  • No API Gateway, omita o host ou defina-o como o nome DNS da API implementada. Os fornecedores de APIs definem-no frequentemente como o nome DNS quando partilham a especificação OpenAPI com os respetivos consumidores de APIs. No entanto, o Gateway da API não aplica o valor da propriedade host.

Por exemplo, a seguinte é uma parte de uma definição da OpenAPI usada pelos Endpoints para definir uma API para aceder a um serviço de back-end implementado em funções do 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