Puedes generar paquetes de bibliotecas de cliente que permitan a las aplicaciones acceder a tu API mediante la herramienta de línea de comandos de Endpoints Frameworks. Cuando generas una biblioteca de cliente, la herramienta de línea de comandos de Endpoints Frameworks genera automáticamente un documento de descubrimiento que describe la superficie de tu API.
Para obtener la herramienta de línea de comandos de Endpoints Frameworks, descarga endpoints-framework-tools
desde el repositorio central de Maven.
Una vez que hayas extraído el contenido del archivo ZIP, la herramienta estará en el directorio endpoints-framework-tools-2.2.1/bin/
.
Generar un paquete de biblioteca de cliente a partir de una API
Puedes usar la herramienta de línea de comandos de Endpoints Frameworks para generar los siguientes tipos de paquetes de cliente:
Maven: este paquete incluye un archivo
pom.xml
con las dependencias de Endpoints Frameworks y de la biblioteca de cliente de la API de Google. El archivoreadme.html
proporciona información detallada sobre lo que debes añadir al archivopom.xml
para diferentes tipos de aplicaciones cliente y sobre cómo compilar una biblioteca de cliente para tu API con Maven.Gradle: este paquete incluye un archivo
build.gradle
con las dependencias de Endpoints Frameworks y de la biblioteca de cliente de la API de Google. El archivoreadme.html
proporciona información detallada sobre lo que debes añadir al archivobuild.gradle
para diferentes tipos de aplicaciones cliente y sobre cómo compilar una biblioteca de cliente para tu API con Gradle.Paquete de cliente predeterminado: este paquete contiene todas las bibliotecas de dependencias y el archivo
source.jar
generado, que es la biblioteca de Java que usas en tu cliente para llamar a tu API. Este paquete proporciona a tu cliente todas las funciones de la biblioteca de cliente de la API de Google, incluido OAuth. El archivoreadme.html
enumera los archivos.jar
que se necesitan para los distintos tipos de aplicaciones cliente y otros detalles para usar la biblioteca de cliente.
Si utilizas la biblioteca de cliente con una aplicación Android, te recomendamos que uses un paquete de cliente de Gradle.
Sintaxis de línea de comandos
Antes de usar la herramienta de línea de comandos de Endpoints Frameworks, debes compilar tu proyecto de backend, ya que esta herramienta requiere archivos binarios compilados. También puedes proporcionar la opción --war=
, que apunta al directorio de salida del destino de compilación que contiene el directorio WEB-INF
y las clases de Java compiladas, si no quieres usar el valor predeterminado (--war="./war"
).
La sintaxis básica es la siguiente:
/path-to/endpoints-framework-tools-2.2.1/bin/endpoints-framework-tools \ get-client-lib OPTIONS CLASS_NAME
donde:
OPTIONS
, si se proporciona, es uno o varios elementos que se muestran en la tabla de opciones.CLASS_NAME
es el nombre completo de la clase de tu API.
Por ejemplo:
/path-to/endpoints-framework-tools-2.2.1/bin/endpoints-framework-tools \
get-client-lib --war=target/echo-1.0-SNAPSHOT -bs gradle com.example.echo.Echo
donde target/echo-1.0-SNAPSHOT
es la ruta relativa o absoluta al directorio de compilación de destino que contiene WEB-INF
y las clases de backend compiladas.
Opciones
Puedes utilizar las siguientes opciones:
Nombre de la opción | Descripción | Ejemplo |
---|---|---|
build-system |
Permite especificar qué tipo de paquete de cliente se debe generar. Especifica gradle para un paquete de cliente de Gradle para Android, maven para un paquete de cliente de Maven o default (o simplemente omite esta opción) para un paquete que solo contenga las bibliotecas de dependencias y el archivo JAR de origen. |
--build-system=gradle -bs gradle |
war |
Define la ruta del directorio de destino de la compilación WEB-INF que contiene appengine-web.xml y otros metadatos.Valor predeterminado: ./war . |
--war=target/echo-1.0-SNAPSHOT -w target/echo-1.0-SNAPSHOT |
output |
Define el directorio en el que se escribe la salida. Valor predeterminado: el directorio desde el que se invoca la herramienta. |
--output=/mydir -o /mydir |
Plataformas de cliente admitidas
Las siguientes plataformas son compatibles con el paquete de cliente generado por la herramienta de línea de comandos de Endpoints Frameworks:
- Java 7 y versiones posteriores:
- Android 1.6 y versiones posteriores.
- App Engine.