Mengembangkan proxy API

Halaman ini berlaku untuk Apigee dan Apigee Hybrid.

Baca dokumentasi Apigee Edge.

Mengekspos API di Apigee dengan mengimplementasikan proxy API. Proxy API memisahkan API yang ditampilkan ke aplikasi dari layanan backend Anda, sehingga melindungi aplikasi tersebut dari perubahan kode backend.

Kembangkan proxy API Anda menggunakan Apigee di Cloud Code seperti yang dijelaskan di bagian berikut. Lihat juga Mengelola folder dan file di ruang kerja Apigee.

Membuat proxy API

Untuk membuat proxy API menggunakan Apigee di {code_name}}:

  1. Lakukan salah satu tindakan berikut:

    • Di bagian Apigee, posisikan kursor di atas folder apiproxies dan klik Buat ikon.

      + menampilkan saat Anda mengarahkan kursor ke folder apiproxies

    • Pilih View > Command Palette untuk membuka palet Command, lalu pilih Cloud Code: Create Apigee proxy bundle.

    Wizard Create proxy akan terbuka.

  2. Pilih salah satu opsi berikut:

    Jenis Deskripsi
    Reverse proxy

    Proxy API yang merutekan permintaan masuk ke layanan backend HTTP yang ada. Dapat berupa JSON atau XML API. Lihat Membuat reverse proxy untuk layanan HTTP nanti di bagian ini.

    No target

    Proxy API tanpa backend API ("tidak ada target"). Mirip dengan Membuat reverse proxy untuk layanan HTTP, kecuali Anda tidak akan menentukan URL target yang ada saat menentukan detail proxy API.

Bagian berikut menjelaskan langkah-langkah tambahan yang diperlukan untuk membuat setiap jenis proxy API.

Membuat reverse proxy untuk layanan HTTP

Apigee menghasilkan proxy API terbalik berdasarkan informasi berikut:

  • URL layanan backend
  • Jalur URI yang secara unik mengidentifikasi API yang akan diekspos oleh proxy API ke aplikasi konsumen

Saat memilih Reverse proxy saat membuat proxy API, Anda akan diminta untuk memasukkan Autentikasi keamanan dan Detail proxy API yang dijelaskan dalam tabel berikut.

Untuk Autentikasi keamanan, pilih salah satu opsi berikut:

Autentikasi keamanan Deskripsi
API key based authentication

Menambahkan verifikasi kunci API sederhana ke proxy API yang Anda tentukan. Apigee menambahkan kebijakan berikut ke proxy API Anda secara otomatis:

  • VerifyAPIKey untuk memvalidasi kunci API yang ditampilkan dengan meminta aplikasi.
  • TetapkanMessage untuk menghapus kunci API, yang diberikan dalam panggilan API sebagai parameter kueri, dari permintaan yang diteruskan ke server backend.
Access token based authentication

Menambahkan autentikasi berbasis OAuth 2.0 ke proxy API Anda. Apigee otomatis menambahkan kebijakan berikut ke proxy API Anda:

  • VerifyAPIKey untuk memverifikasi token akses.
  • TetapkanMessage untuk menghapus header Authorization yang diteruskan untuk autentikasi.
Untuk mempelajari cara melakukan autentikasi menggunakan token akses, lihat Memverifikasi token akses.
No authentication Tidak perlu autentikasi. Permintaan diteruskan ke backend tanpa pemeriksaan keamanan di Apigee.

Untuk detail proxy API, tanggapi setiap permintaan berikut dan tekan Enter untuk mengonfirmasi dan melanjutkan, atau Esc untuk membatalkan wizard:

Kolom Deskripsi
Backend target URL URL layanan backend yang dipanggil oleh proxy API ini.
API proxy name Nama yang ditampilkan untuk API Anda. Tentukan karakter alfanumerik, tanda hubung (-), atau garis bawah (_).
API proxy base path Fragmen URI yang muncul setelah alamat http://[host] atau https://[host] proxy API Anda. Apigee menggunakan URI jalur dasar untuk mencocokkan dan merutekan pesan permintaan yang masuk ke proxy API yang tepat.

Menggunakan karakter pengganti di jalur dasar

Gunakan satu atau beberapa karakter pengganti /*/ di jalur dasar proxy API agar proxy API Anda siap menghadapi masa depan. Misalnya, jalur dasar /team/*/members memungkinkan klien memanggil https://[host]/team/blue/members dan https://[host]/team/green/members tanpa Anda perlu membuat proxy API baru untuk mendukung tim baru. Perhatikan bahwa /**/ tidak didukung.

Setelah Anda menyelesaikan langkah-langkah dalam wizard, folder apiproxy-name baru akan ditambahkan di bagian apiproxies di bagian Apigee. Setiap folder proxy API disusun seperti yang dijelaskan dalam struktur direktori konfigurasi proxy API.

Berikut ini contoh konfigurasi default yang dibuat untuk proxy API terbalik bernama helloworld dengan kebijakan yang ditambahkan untuk mendukung autentikasi berbasis kunci API.

Menampilkan struktur folder reverse proxy di bagian Apigee.

Untuk deskripsi konfigurasi default, lihat Menjelajahi konfigurasi proxy API default.

Membuat proxy API tanpa target backend

Proses pembuatan proxy API tanpa target backend sama dengan membuat reverse proxy, kecuali bahwa Anda tidak diminta untuk menentukan URL bagi layanan backend (Target (Existing API)) dan konfigurasi endpoint target default tidak disertakan. Lihat Membuat reverse proxy untuk layanan HTTP untuk informasi selengkapnya.

Mempelajari konfigurasi proxy API default

Tabel berikut merangkum konten yang disertakan dalam konfigurasi default saat Anda membuat proxy API berdasarkan jenis proxy API dan opsi autentikasi yang dipilih.

Konfigurasi fileReverse proxy
Reverse proxy
Tidak ada target
Autentikasi OAuthV2
Autentikasi kunci API
proxies/default.xml
Konfigurasi endpoint proxy default.
   
targets/default.xml
Konfigurasi endpoint target default.
     
impose-quota.xml
Kebijakan kuota untuk menentukan kuota default.
   
remove-header-authorization.xml
Kebijakan TetapkanMessage untuk menghapus header Authorization yang diteruskan untuk autentikasi.
    >
 
remove-query-param-apikey.xml
Kebijakan TetapkanMessage untuk menghapus parameter kueri apikey yang diteruskan untuk autentikasi.
     
verify-api-key.xml
Kebijakan VerifyAPIKey untuk menerapkan verifikasi kunci API.
     
verify-oauth-v2-access-token.xml
OAuthV2 untuk memvalidasi token akses OAuth V2.
   
 

Mengupload paket proxy API

Untuk mengupload paket proxy API ke Apigee di Cloud Code:

  1. Lakukan salah satu tindakan berikut:

    • Di bagian Apigee, posisikan kursor di atas folder apiproxies dan klik Ikon upload.

    • Pilih View > Command Palette untuk membuka palet Command, lalu pilih Cloud Code: Import Apigee proxy bundle.

  2. Buka paket proxy API yang ingin Anda upload, lalu klik Import proxy. Paket proxy API harus terstruktur seperti yang dijelaskan dalam struktur direktori konfigurasi proxy API.

  3. (Opsional) Secara default, nama file ZIP tanpa ekstensinya digunakan untuk nama proxy API. Jika nama ini tidak unik, Anda akan diminta untuk memasukkan nama yang unik.

Folder apiproxy-name yang diupload akan ditambahkan di apiproxies di bagian Apigee.

Mengelola endpoint proxy

Seperti yang dijelaskan dalam Apa itu proxy API?, endpoint proxy (ProxyEndpoint) menentukan cara aplikasi klien menggunakan API Anda. Anda mengonfigurasi endpoint proxy untuk menentukan URL proxy API Anda. Endpoint proxy juga menentukan apakah aplikasi mengakses proxy API melalui HTTP atau HTTPS. Anda dapat melampirkan kebijakan ke endpoint proxy untuk menerapkan keamanan, pemeriksaan kuota, serta jenis kontrol akses dan pembatasan kapasitas lainnya.

Buat dan konfigurasi endpoint proxy seperti yang dijelaskan di bagian berikut.

Membuat endpoint proxy

Saat Anda membuat proxy API, endpoint proxy default ditambahkan ke konfigurasi proxy API. Untuk informasi selengkapnya, lihat Menjelajahi konfigurasi proxy API default. Anda dapat membuat endpoint proxy tambahan, sesuai kebutuhan.

Untuk membuat endpoint proxy menggunakan Apigee di Cloud Code:

  1. Di bagian Apigee, lakukan salah satu tindakan berikut:

    • Di bagian Apigee, posisikan kursor ke salah satu folder berikut, klik Buat ikon, lalu pilih Create proxy endpoint:
      • paket proxy apiproxy-name
      • apiproxy-name/apiproxy
    • Di bagian Apigee, posisikan kursor di atas folder apiproxy-name/apiproxy/proxies, lalu klik Buat ikon.

    Wizard Create proxy endpoint akan terbuka.

  2. Masukkan nilai untuk rangkaian perintah berikutnya. Tekan Enter setelah masing-masing untuk mengonfirmasi dan melanjutkan, atau Esc untuk membatalkan.

    Kolom Deskripsi
    Proxy endpoint name Nama yang digunakan untuk mengidentifikasi endpoint proxy.
    API proxy base path Bagian dari URL yang digunakan untuk membuat permintaan ke API Anda. Apigee menggunakan URL untuk mencocokkan dan mengarahkan permintaan masuk ke proxy API yang tepat.

Endpoint dibuat dan ditambahkan ke folder apiproxy-name/apiproxy/proxies di bagian Apigee dan dibuka di editor. Konfigurasikan endpoint proxy, seperti yang dijelaskan di bagian berikut.

Mengonfigurasi endpoint proxy

Untuk mengonfigurasi endpoint proxy, lihat bagian berikut:

Mengelola endpoint target

Seperti yang dijelaskan di bagian Apa itu proxy API?, endpoint target (TargetEndpoint) menentukan cara proxy API berinteraksi dengan layanan backend Anda. Anda mengonfigurasi endpoint target untuk meneruskan permintaan ke layanan backend yang tepat, termasuk menentukan setelan keamanan, protokol HTTP atau HTTPS, dan informasi koneksi lainnya. Anda dapat melampirkan kebijakan ke endpoint target guna memastikan pesan respons diformat dengan benar untuk aplikasi yang membuat permintaan awal.

Buat dan konfigurasi endpoint target seperti yang dijelaskan di bagian ini.

Membuat endpoint target

Saat Anda membuat proxy API terbalik, endpoint target default ditambahkan ke konfigurasi proxy API. Saat membuat proxy API tanpa target backend, hanya endpoint proxy default yang ditambahkan ke konfigurasi proxy API, tidak ada endpoint target yang ditambahkan. Untuk informasi selengkapnya, lihat Menjelajahi konfigurasi proxy API default.

Buat endpoint target, sesuai kebutuhan.

Untuk membuat endpoint target menggunakan Apigee di Cloud Code:

  1. Di bagian Apigee, lakukan salah satu tindakan berikut:

    • Di bagian Apigee, posisikan kursor ke salah satu folder berikut, klik Buat ikon, lalu pilih Create target endpoint:
      • paket proxy apiproxy-name
      • apiproxy-name/apiproxy
    • Di bagian Apigee, posisikan kursor di atas folder apiproxy-name/apiproxy/targets, lalu klik Buat ikon.

    Wizard Create target endpoint akan terbuka.

  2. Lakukan langkah-langkah berikut berdasarkan jenis endpoint target yang ingin Anda buat:

    Jenis Langkah
    Target HTTP eksternal

    Untuk menentukan target HTTP eksternal:

    1. Pilih Target HTTP.
    2. Masukkan nama endpoint target di Nama endpoint target.
    3. Masukkan URL layanan backend yang dipanggil endpoint target ini di URL target backend.

    Untuk informasi selengkapnya, lihat Menentukan URL endpoint target.

    Perantaian proxy

    Untuk menentukan proxy API yang di-deploy secara lokal sebagai target:

    1. Pilih Perantaian proxy.
    2. Masukkan nama endpoint target di Nama endpoint target.
    3. Pilih proxy API.
    4. Pilih endpoint proxy.

    Untuk informasi selengkapnya, lihat Membuat rantai proxy bersama-sama.

    Target load balancing

    Untuk menentukan target load balancing menggunakan server target yang ditentukan di lingkungan:

    1. Pilih Target load balancing.
    2. Masukkan nama endpoint target di Nama endpoint target.

    Untuk informasi selengkapnya, lihat Mengonfigurasi TargetEndpoint untuk melakukan load balancing di beberapa TargetServers yang dinamai.

Endpoint target dibuat dan ditambahkan ke folder apiproxy-name/apiproxy/targets di bagian Apigee dan dibuka di editor. Konfigurasikan endpoint target, seperti yang dijelaskan di bagian berikut.

Mengonfigurasi endpoint target

Konfigurasi endpoint target, seperti yang dijelaskan dalam topik berikut.