Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Anda dapat menggunakan kebijakan yang disertakan dengan Apigee Edge untuk memanipulasi pesan yang mengalir melalui proxy API Anda. Dengan kebijakan, Anda dapat:
- Mengonversi pesan antar-format, seperti dari XML ke JSON.
- Menetapkan nilai variabel dari konten pesan, dan membuat pesan dari nilai variabel.
- Gunakan kode prosedural, seperti JavaScript, Java, dan Python, untuk menangani pesan dan data dengan cara yang lebih kompleks.
Secara umum, saat menggunakan kebijakan ini, Anda akan menentukan input dan output sebagai variabel flow. Pada runtime, Apigee Edge akan mengambil nilai input dari variabel sumber dan menulis nilai output ke variabel output.
Topik ini memperkenalkan kemampuan berikut. Untuk mengetahui informasi teknis dan lebih lengkap, lihat referensi kebijakan untuk setiap kebijakan.
Penanganan sederhana untuk XML dan JSON
Apigee Edge menyertakan kebijakan yang mempermudah konversi antara XML dan JSON, serta mentransformasi XML dengan XSL.
Mengonversi JSON ke XML
Kebijakan JSON ke XML menggunakan input JSON Anda dan mengonversinya menjadi XML.
Dalam contoh kebijakan berikut, kebijakan ini mengambil pesan berformat JSON dari variabel
request
, lalu mengganti nilai variabel dengan pesan berformat XML.
Input ditentukan dalam elemen <Source>
, sedangkan output ditentukan dalam elemen <OutputVariable>
.
<JSONToXML name="jsontoxml"> <Source>request</Source> <OutputVariable>request</OutputVariable> </JSONToXML>
Mengonversi XML ke JSON
Kebijakan XML ke JSON mengonversi pesan input XML menjadi JSON.
Dalam contoh kebijakan berikut, kebijakan mengambil pesan berformat XML dari
variabel response
, lalu mengganti nilai variabel dengan pesan berformat JSON.
Input ditentukan dalam elemen <Source>
, sedangkan output ditentukan dalam elemen <OutputVariable>
.
<XMLToJSON name="ConvertToJSON"> <OutputVariable>response</OutputVariable> <Source>response</Source> </XMLToJSON>
Mentransformasi XML dengan XSL
Anda dapat menggunakan kebijakan Transformasi XSL untuk mengubah pesan menggunakan XSL. Misalnya, setelah mengonversi payload JSON ke XML, Anda dapat menggunakan kebijakan Transformasi XSL dengan style sheet untuk melakukan transformasi yang Anda perlukan.
Dalam contoh kebijakan berikut, kebijakan mengambil pesan berformat XML dari
variabel response
, lalu mengganti nilai variabel dengan pesan yang diformat oleh
my_transform.xsl
. Input ditentukan dalam elemen <Source>
,
sedangkan output ditentukan dalam elemen <OutputVariable>
.
<XSL name="TransformXML"> <ResourceURL>xsl://my_transform.xsl</ResourceURL> <Source>response</Source> <OutputVariable>response</OutputVariable> </XSL> <Source>request</Source> <ResourceURL>xsl://XSL-Transform-1.xsl</ResourceURL> <OutputVariable/>
Menangani data variabel
Penanganan data dalam proxy sering kali hanya melibatkan penggunaan data status sebagai nilai variabel aliran. Anda sering kali dapat melakukannya dengan menggunakan kebijakan yang mendapatkan atau menetapkan nilai variabel. Misalnya, Anda mungkin ingin mengubah nilai variabel menjadi pesan, atau mengekstrak isi pesan untuk menetapkan nilai variabel.
Pastikan Anda melihat referensi untuk dua kebijakan berikut:
- Tetapkan kebijakan Message untuk membuat pesan dari nilai variabel.
- Ekstrak kebijakan Variabel untuk menetapkan variabel dari konten pesan.
Menciptakan transformasi yang lebih kompleks
Untuk penanganan data yang kompleksitasnya berada di luar kemampuan kebijakan yang disertakan, Anda dapat menggunakan bahasa prosedural seperti JavaScript, Java, atau Python.
Umumnya, proses ini melibatkan penulisan kode dalam salah satu bahasa tersebut, lalu memanggil kode dari kebijakan khusus untuk bahasa tersebut. Untuk informasi selengkapnya, lihat Menyertakan kode prosedural.