Cloud Endpoints Frameworks proporciona características de administración de API que se asimilan a las características que proporciona el proxy de servicio extensible (ESP) a Cloud Endpoints. Endpoints Frameworks incluye una puerta de enlace de API integrada que intercepta todas las solicitudes y realiza las verificaciones necesarias (por ejemplo, la autenticación) antes de reenviar la solicitud al backend de la API. Tras la respuesta desde el backend, se informa y recopila la telemetría en Endpoints Frameworks. Puedes ver las métricas de tu API en la página Endpoints > Servicios en la consola deGoogle Cloud .
Las características de administración de API disponibles en Endpoints Frameworks incluyen lo siguiente:
Para que Endpoints administre tu API, debes implementar un documento de OpenAPI en el que se describa que tu API utiliza la versión 2.0 de OpenAPI Specification. En esta página, se describe cómo generar y, luego, implementar un documento de OpenAPI con el que se habilita Endpoints para administrar tu API.
Si no agregas la administración de API, tu API seguirá entregando solicitudes, pero no aparecerá en la página Endpoints > Servicios en laGoogle Cloud console, y la funcionalidad que proporciona Endpoints, como el registro, la supervisión y la configuración de cuotas, no estará disponible.
Para agregar la administración de API a tu API, sigue estos pasos:
- Configura tu archivo de Maven - pom.xmlo tu archivo de Gradle- build.gradlecomo se describe en Configura los archivos de compilación.
- Asegúrate de configurar el ID del proyecto Google Cloud en los archivos de compilación. - Maven- Busca - <endpoints.project.id>y reemplaza- YOUR_PROJECT_IDpor el ID de tu proyecto Google Cloud . Por ejemplo:- <endpoints.project.id>example-project-12345</endpoints.project.id>- Gradle- 
        Busca def projectIdy reemplazaYOUR_PROJECT_IDpor el Google Cloud ID del proyecto. Por ejemplo:def projectId = 'example-project-12345'
- Asegúrate de que tu archivo build.gradlecontenga la tareareplaceProjectId, que establece el ID del proyecto en los archivosappengine-web.xmlyweb.xml.
 
- 
        Busca 
- En el archivo - web.xmlde tu proyecto de API, agrega la configuración del filtro de servlet de administración de API:
- Modifica la configuración de compilación de tu proyecto de API: - Maven- 
      Agrega las dependencias de administración de API: 
- 
      Incluye el complemento que puedes usar para generar bibliotecas cliente y el documento de OpenAPI, openapi.json:
 - Gradle- 
    Agrega las dependencias de administración de API: 
- 
         Declara la dependencia externa para que el complemento se recupere de Maven Central: 
- 
       Usa el complemento de Gradle para Endpoints Frameworks del servidor, que genera el documento de OpenAPI: 
- 
      Configura el nombre de tu servicio de Endpoints: 
 
- 
      
- Después de modificar las dependencias, limpia tu proyecto y, luego, compila tu API: - Maven- mvn clean mvn package - Gradle- gradle clean gradle build 
- Genera el documento de OpenAPI, - openapi.json:- Maven- mvn endpoints-framework:openApiDocs- Gradle- gradle endpointsOpenApiDocs
- Implementa el documento de OpenAPI: - gcloud endpoints services deploy openapi.json- La primera vez que implementes - openapi.json, se creará un nuevo servicio de Endpoints con el nombre- YOUR_PROJECT_ID.appspot.com. Una vez completado de forma correcta, una línea similar a la siguiente muestra el ID de configuración del servicio y el nombre del servicio:- Service Configuration 2017-02-13r0 uploaded for service example-project-12345.appspot.com - En el ejemplo anterior, - 2017-02-13r0es el ID de configuración del servicio. El ID de configuración de servicio consiste en una marca de fecha seguida de un número de revisión. Si vuelves a implementar- openapi.json, el número de revisión se incrementa en el ID de configuración del servicio.- Si necesitas volver a mostrar el ID de configuración del servicio, ejecuta el siguiente comando, pero reemplaza - YOUR_PROJECT_IDpor el ID del proyecto de Google Cloud :- gcloud endpoints configs list --service=YOUR_PROJECT_ID.appspot.com - Puedes crear tu propio documento de OpenAPI y, luego, implementarlo, en lugar de usar uno generado. Solo debes reemplazar - openapi.jsonya mencionado con la ruta a tu documento de OpenAPI. Para obtener más información sobre cómo escribir un documento de OpenAPI, consulta Descripción general de OpenAPI.
- Edita el archivo - appengine-web.xmlpara establecer el valor de una variable de entorno:- Reemplaza - ${endpoints.project.id}por el Google Cloud ID del proyecto. Por ejemplo:- <env-var name="ENDPOINTS_SERVICE_NAME" value="example-project-12345.appspot.com" />
- Implementa tu aplicación de nuevo. - Maven- mvn appengine:deploy - Gradle- gradle appengineDeploy 
- Prueba tu API mediante algunas solicitudes. 
- Si deseas ver las métricas de tus APIs, abre la página Endpoints > Servicios en la Google Cloud consola de tu proyecto: