Mengonversi JSON ke XML
BERLAKU UNTUK: Semua tingkatAN API Management
Kebijakan json-to-xml
ini mengonversi bodi permintaan atau respons dari JSON ke XML.
Catatan
Tetapkan elemen kebijakan dan elemen turunan dalam urutan yang disediakan dalam pernyataan kebijakan. Pelajari lebih lanjut cara mengatur atau mengedit kebijakan API Management.
Pernyataan kebijakan
<json-to-xml
apply="always | content-type-json"
consider-accept-header="true | false"
parse-date="true | false"
namespace-separator="separator character"
namespace-prefix="namespace prefix"
attribute-block-name="name" />
Atribut
Atribut | Deskripsi | Wajib diisi | Default |
---|---|---|---|
terapkan | Atribut harus diatur ke salah satu nilai berikut. - always - selalu terapkan konversi.- content-type-json - konversi hanya jika respons header Content-Type menunjukkan adanya JSON.Ekspresi kebijakan diizinkan. |
Ya | T/A |
consider-accept-header | Atribut harus diatur ke salah satu nilai berikut. - true - terapkan konversi jika XML diminta dalam permintaan Terima header.- false - selalu terapkan konversi.Ekspresi kebijakan diizinkan. |
No | true |
parse-date | Ketika diatur ke false nilai tanggal hanya disalin selama transformasi. Ekspresi kebijakan tidak diizinkan. |
No | true |
namespace-separator | Karakter yang digunakan sebagai pemisah namespace. Ekspresi kebijakan diizinkan. | No | Garis bawah |
namespace-prefix | String yang mengidentifikasi properti sebagai atribut namespace, biasanya "xmlns". Properti dengan nama yang dimulai dengan awalan yang ditentukan akan ditambahkan ke elemen saat ini sebagai deklarasi namespace. Ekspresi kebijakan diizinkan. | No | T/A |
attribute-block-name | Saat diatur, properti di dalam objek bernama akan ditambahkan ke elemen sebagai atribut. Ekspresi kebijakan diizinkan. | No | Belum diatur |
Penggunaan
- Bagian kebijakan: masuk, keluar, saat terjadi kesalahan
- Cakupan kebijakan: global, ruang kerja, produk, API, operasi
- Gateway: klasik, v2, konsumsi, dihost sendiri, ruang kerja
Contoh
Pertimbangkan kebijakan berikut:
<policies>
<inbound>
<base />
</inbound>
<outbound>
<base />
<json-to-xml apply="always" consider-accept-header="false" parse-date="false" namespace-separator=":" namespace-prefix="xmlns" attribute-block-name="#attrs" />
</outbound>
</policies>
Jika backend mengembalikan JSON berikut:
{
"soapenv:Envelope": {
"xmlns:soapenv": "http://schemas.xmlsoap.org/soap/envelope/",
"xmlns:v1": "http://localdomain.com/core/v1",
"soapenv:Header": {},
"soapenv:Body": {
"v1:QueryList": {
"#attrs": {
"queryName": "test"
},
"v1:QueryItem": {
"name": "dummy text"
}
}
}
}
}
Respons XML ke klien adalah:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v1="http://localdomain.com/core/v1">
<soapenv:Header />
<soapenv:Body>
<v1:QueryList queryName="test">
<name>dummy text</name>
</v1:QueryList>
</soapenv:Body>
</soapenv:Envelope>
Kebijakan terkait
Konten terkait
Untuk informasi selengkapnya tentang bekerja dengan kebijakan, lihat:
- Tutorial: Mengubah dan melindungi API Anda
- Referensi Kebijakan untuk daftar lengkap pernyataan kebijakan dan pengaturannya
- Ekspresi kebijakan
- Mengatur atau mengedit kebijakan
- Menggunakan kembali konfigurasi kebijakan
- Repositori cuplikan kebijakan
- Kebijakan penulis menggunakan Microsoft Copilot di Azure