Frameworks Cloud Endpoints untuk alat command line App Engine

Halaman ini menjelaskan cara menggunakan alat command line Endpoints Frameworks untuk membuat library klien dari API backend Python Anda (kode yang berjalan di server). Semua aplikasi Java atau Android dapat menggunakan library ini untuk memanggil API.

Anda dapat membuat paket library klien yang memungkinkan aplikasi mengakses API menggunakan alat command line Endpoints Frameworks. Saat Anda membuat library klien, alat command line Endpoints Frameworks akan otomatis membuat Dokumen penemuan yang mendeskripsikan platform API Anda.

Alat command line Endpoints Frameworks,endpointscfg.py tersedia di library Endpoints Frameworks. Untuk mengetahui informasi tentang cara menginstal library Endpoints Frameworks menggunakan pip, lihat Menginstal library Endpoints Frameworks. Perhatikan bahwa perintah berikut mengasumsikan bahwa Anda telah menginstal library Endpoint Frameworks dalam direktori yang disebut lib. Selain itu, petunjuk ini mengasumsikan bahwa Anda telah membuat API backend. Lihat tutorial Framework Endpoint untuk Python untuk mengetahui contoh penggunaan alat command line Framework Endpoint pada kode contoh.

Membuat paket library klien dari API

Anda dapat menggunakan alat command line Endpoints Frameworks untuk membuat jenis paket klien berikut:

  • Maven: Paket ini mencakup file pom.xml dengan dependensi Framework Endpoint dan Library Klien Google API. File readme.html memberikan informasi mendetail tentang apa yang perlu Anda tambahkan ke file pom.xml untuk berbagai jenis aplikasi klien, dan cara mem-build library klien untuk API Anda menggunakan Maven.

  • Gradle: Paket ini mencakup file build.gradle dengan Endpoint Framework dan dependensi Library Klien Google API. File readme.html memberikan informasi mendetail tentang apa yang perlu Anda tambahkan ke file build.gradle untuk berbagai jenis aplikasi klien dan cara membuat library klien untuk API Anda menggunakan Gradle.

  • Paket klien default: Paket ini berisi semua library dependensi dan file source.jar yang dihasilkan, yang merupakan library Java yang digunakan di klien untuk memanggil API Anda. Paket ini memberikan semua kemampuan Library Klien Google API, termasuk OAuth. File readme.html mencantumkan file .jar yang diperlukan untuk berbagai jenis aplikasi klien dan detail lainnya untuk menggunakan library klien.

Jika Anda menggunakan library klien dengan aplikasi Android, sebaiknya gunakan paket klien Gradle.

Membuat library klien

Untuk membuat library klien:

  1. Ubah direktori ke direktori yang berisi file app.yaml API dan class layanan API. Atau, gunakan opsi --application untuk menentukan beberapa lokasi lain dari direktori aplikasi Anda.

  2. Panggil alat command line Endpoints Frameworks seperti berikut:

    lib/endpoints/endpointscfg.py get_client_lib java -bs gradle main.EchoApi
    

    dengan main sebagai class yang berisi API dan EchoApi adalah nama API Anda.

  3. Tunggu hingga alat menghasilkan library klien; jika berhasil, alat akan menampilkan pesan yang mirip dengan berikut ini:

    API client library written to ./echo-v1.zip
    
  4. Tambahkan JAR library klien ke aplikasi Android Anda.

  5. Ulangi langkah sebelumnya setiap kali Anda memodifikasi kode API.

Paket library klien ditulis ke direktori saat ini, kecuali jika Anda menentukan beberapa direktori output lainnya menggunakan opsi output.

Sintaksis command line

{i>Syntax<i} dasarnya adalah sebagai berikut:

/path-to/your-app/lib/endpointscfg.py get_client_lib TARGET_LANG OPTIONS CLASS_NAME

dengan:

  • TARGET_LANG menentukan jenis paket klien yang ingin Anda buat. Saat ini, Anda harus menyediakan nilai java (untuk klien Java seperti Android).
  • OPTIONS, jika disediakan, adalah satu atau beberapa item yang ditampilkan dalam tabel Opsi
  • CLASS_NAME adalah nama class yang sepenuhnya memenuhi syarat dari API Anda.

Opsi

Anda dapat menggunakan opsi berikut:

Nama opsi Deskripsi Contoh
application Secara default, alat tersebut menghasilkan API dari backend API dalam direktori saat ini.
Jika Anda ingin membuat file menggunakan direktori yang berbeda, tentukan jalur ke direktori yang berisi app.yaml dan class layanan yang menerapkan API Anda.
--application /my_path/my_api_dir
build-system Memungkinkan Anda menentukan jenis paket klien mana yang harus dibuat. Tentukan gradle untuk paket klien Gradle untuk Android, maven untuk paket klien Maven, atau default (atau cukup hapus opsi ini) untuk paket yang hanya berisi library dependensi dan jar sumber. --build-system=gradle
-bs gradle
hostname Menentukan dokumen penemuan rootURL.
Opsi ini mengganti nilai default yang berasal dari entri application di dalam project API backend app.yaml ([YOUR_APP_ID].appspot.com) dan hostname yang ditentukan di dekorator untuk API Anda.
Salah satu kegunaan opsi ini adalah menyediakan nama host localhost sebagai rootURL untuk pengujian lokal.
--hostname localhost
format Jangan tentukan ini karena satu-satunya nilai yang didukung adalah nilai default, rest untuk REST. Tidak diperlukan, gunakan default.
output Menetapkan direktori tempat output ditulis.
Default: direktori tempat alat dipanggil.
--output /mydir
-o /mydir

Platform klien yang didukung

Platform berikut didukung dalam paket klien yang dihasilkan oleh alat command line Endpoint Frameworks:

Membuat dokumen OpenAPI dari API

Alat endpointscfg.py menyediakan perintah untuk membuat dokumen OpenAPI dari backend API. Sintaksis perintahnya adalah:

lib/endpoints/endpointscfg.py get_openapi_spec
    [-h]
    [-a APPLICATION]
    [--hostname HOSTNAME]
    [-o OUTPUT]
    service [service ...]

positional arguments:
  service               Fully qualified service class name.

optional arguments:
  -h, --help            Show this help message and exit.
  -a APPLICATION, --application APPLICATION
                        The path to the Python App Engine application.
  --hostname HOSTNAME   Default application hostname, if none is specified for the API service.
  -o OUTPUT, --output OUTPUT
                        The directory to store output files.
  --x-google-api-name   Add the 'x-google-api-name' field to the generated OpenAPI document.

Misalnya, menggunakan contoh echo:

$ lib/endpoints/endpointscfg.py get_openapi_spec --hostname=echo-example.appspot.com main.EchoApi
OpenAPI spec written to ./echov1openapi.json