Membentuk, mengakses, dan mengonversi pesan

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. Dengan kebijakan, Anda dapat:

  • Mengonversi pesan antar-format, seperti dari XML ke JSON.
  • Tetapkan nilai variabel dari konten pesan, dan buat pesan dari nilai variabel.
  • Gunakan kode prosedural, seperti JavaScript, Java, dan Python, untuk menangani pesan dan data di dengan cara yang lebih kompleks.

Secara umum, saat menggunakan kebijakan ini, Anda menentukan input dan output sebagai variabel flow. Di runtime, Apigee Edge mengambil nilai input dari variabel sumber dan menulis output nilai pada variabel output.

Topik ini memperkenalkan kemampuan tersebut. Untuk informasi teknis dan lebih lengkap, lihat referensi kebijakan untuk masing-masing pihak.

Penanganan sederhana untuk XML dan JSON

Apigee Edge menyertakan kebijakan yang mempermudah konversi antara XML dan JSON, serta untuk dan mengubah XML dengan XSL.

Mengonversi JSON ke XML

Kebijakan JSON ke XML mengambil input JSON dan mengonversinya menjadi XML.

Dalam contoh kebijakan berikut, kebijakan mengambil pesan berformat JSON dari request, lalu mengganti nilai variabel dengan pesan berformat XML. Input ditetapkan 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 response, lalu mengganti nilai variabel tersebut dengan pesan berformat JSON. Input ditetapkan 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 class XSL Mentransformasi kebijakan untuk mentransformasi pesan menggunakan XSL. Misalnya, setelah mengonversi JSON {i>payload<i} ke XML, Anda dapat menggunakan kebijakan Transformasi XSL dengan {i>style sheet<i} untuk melakukan transformasi yang Anda butuhkan.

Dalam contoh kebijakan berikut, kebijakan mengambil pesan berformat XML dari response, lalu mengganti nilai variabel dengan pesan yang diformat oleh my_transform.xsl. Input ditetapkan dalam elemen <Source>, saat 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 variabel aliran masing-masing. Sering kali, Anda dapat melakukannya dengan menggunakan kebijakan yang mendapatkan atau menetapkan nilai variabel. Misalnya, Anda mungkin ingin membentuk nilai variabel menjadi pesan, atau mengekstrak isi pesan untuk menetapkan nilai variabel.

Pastikan Anda melihat referensi untuk dua kebijakan berikut:

Membuat transformasi yang lebih kompleks

Untuk penanganan data yang kompleksitasnya di luar kemampuan kebijakan yang disertakan, Anda bisa menggunakan bahasa sesuai prosedur seperti JavaScript, Java, atau Python.

Umumnya, langkah ini melibatkan penulisan kode dalam salah satu bahasa ini, kemudian memanggil kode dari sebuah bahasa. kebijakan yang spesifik untuk bahasa tersebut. Untuk informasi selengkapnya tentang hal ini, lihat Memasukkan sesuai prosedur dari kode Anda.