Memasukkan kode sesuai prosedur

Halaman ini berlaku untuk Apigee dan Apigee Hybrid.

Baca dokumentasi Apigee Edge.

Anda dapat menambahkan kode dalam bahasa sesuai prosedur seperti JavaScript, Java, dan Python, lalu memanggil kode tersebut dari bagian lain proxy API. Dukungan untuk kode sesuai prosedur dirancang untuk memudahkan Anda dalam menerapkan penanganan variabel alur, kesalahan, serta isi permintaan dan respons yang kompleks.

Dengan kode sesuai prosedur, Anda dapat:

  • Membuat atau memanipulasi nilai isi yang kompleks, seperti nilai permintaan dan respons.
  • Tulis ulang URL, misalnya untuk menyamarkan URL endpoint target.
  • Menambahkan logika lain yang tidak tersedia dengan kebijakan yang disertakan.

Cara kerjanya

Gunakan kebijakan khusus untuk bahasa tersebut agar dapat melakukan panggilan dari alur proxy ke kode yang disertakan. Untuk setiap bahasa yang didukung, Apigee menyertakan kebijakan terpisah: kebijakan JavaScript, kebijakan JavaCallout, dan kebijakan PythonScript.

Secara umum, hal berikut ini menjelaskan salah satu cara kerjanya. Pastikan Anda melihat referensi kebijakan untuk mengetahui detail selengkapnya.

  1. Di file terpisah, tulis kode yang akan Anda gunakan.
  2. Dalam kode Anda, masukkan hasil pemrosesan kode ke dalam variabel alur Apigee.

    Anda akan mengambil nilai variabel di tempat lain dalam proxy API Anda. Untuk informasi selengkapnya tentang variabel alur, lihat Mengelola status proxy dengan variabel alur.

  3. Tambahkan file (atau JAR) sebagai file resource ke proxy API Anda.

    Untuk mengetahui informasi selengkapnya tentang file resource, lihat File resource.

  4. Tambahkan kebijakan yang sesuai dengan bahasa yang Anda gunakan.

    Konfigurasi kebijakan untuk melakukan panggilan ke kode dari tempat yang diinginkan dalam alur proxy API.

  5. Gunakan kebijakan untuk mengambil nilai kode dari variabel flow.

Batasan

Model keamanan Apigee tidak mengizinkan panggilan sistem seperti I/O jaringan, pembacaan/penulisan sistem file, info pengguna saat ini, daftar proses, dan pemakaian CPU/memori. Meskipun beberapa panggilan tersebut mungkin berfungsi, panggilan tersebut tidak didukung dan dapat dinonaktifkan secara aktif kapan saja. Agar kompatibel dengan versi baru, sebaiknya hindari melakukan panggilan seperti itu dalam kode Anda.

Mungkin ada batasan lain untuk setiap bahasa yang didukung, seperti yang dijelaskan dalam referensi kebijakan terkait untuk bahasa tersebut.

Bahasa yang didukung

JavaScript

Dukungan untuk JavaScript mencakup model objek lengkap untuk menangani variabel dan nilai yang khusus untuk proxy API. Untuk mengetahui informasi selengkapnya, lihat model objek JavaScript.

Untuk mengetahui informasi dan contoh kebijakan, baca kebijakan JavaScript.

Java

Gunakan kebijakan Java Callout untuk melakukan panggilan ke kode Java dari alur proxy. Topik referensi kebijakan menyertakan contoh.

Python

Gunakan kebijakan Skrip Python untuk memanggil kode Python.