Bagikan melalui


Menggunakan jenis konten untuk menyimpan nilai kunci JSON di App Configuration

Data disimpan dalam App Configuration sebagai nilai kunci, di mana nilai diperlakukan sebagai jenis string secara default. Namun, Anda dapat menentukan jenis kustom dengan menggunakan properti jenis konten yang terkait dengan setiap nilai kunci. Proses ini mempertahankan jenis asli data Anda atau membuat aplikasi Anda berulah secara berbeda berdasarkan jenis konten.

Gambaran Umum

Di App Configuration, Anda dapat menggunakan jenis media JSON sebagai jenis konten nilai kunci Anda untuk memanfaatkan manfaat berikut:

  • Manajemen data yang lebih sederhana: Mengelola nilai kunci, seperti array, akan menjadi jauh lebih mudah di portal Microsoft Azure.
  • Ekspor data yang ditingkatkan: Jenis primitif, array, dan objek JSON akan dipertahankan selama ekspor data.
  • Dukungan asli dengan penyedia App Configuration: Nilai kunci dengan jenis konten JSON akan berfungsi dengan baik saat digunakan oleh pustaka penyedia App Configuration di aplikasi Anda.

Jenis konten JSON yang valid

Jenis media, seperti yang didefinisikan di sini, dapat ditetapkan ke jenis konten yang terkait dengan setiap nilai kunci. Jenis media terdiri dari jenis dan subjenis. Jika jenisnya adalah application dan subjenis (atau akhiran) adalah json, jenis media akan dianggap sebagai jenis konten JSON yang valid. Beberapa contoh jenis konten JSON yang valid adalah:

  • application/json
  • application/activity+json
  • application/vnd.foobar+json;charset=utf-8

Nilai JSON yang valid

Ketika nilai kunci memiliki jenis konten JSON, nilainya harus dalam format JSON yang valid agar klien dapat memprosesnya dengan benar. Jika tidak, klien mungkin gagal atau mundur dan memperlakukannya sebagai format string. Beberapa contoh nilai JSON yang valid adalah:

  • "John Doe"
  • 723
  • false
  • null
  • "2020-01-01T12:34:56.789Z"
  • [1, 2, 3, 4]
  • {"ObjectSetting":{"Targeting":{"Default":true,"Level":"Information"}}}

Nota

Untuk sisa artikel ini, setiap nilai kunci dalam App Configuration yang memiliki jenis konten JSON yang valid dan nilai JSON yang valid akan disebut sebagai nilai kunci JSON.

Dalam tutorial ini, Anda akan mempelajari cara:

  • Buat nilai kunci JSON di App Configuration.
  • Impor nilai kunci JSON dari file JSON.
  • Ekspor nilai kunci JSON ke file JSON.
  • Gunakan nilai kunci JSON di aplikasi Anda.

Jika Anda tidak memiliki akun Azure, buat akun gratis sebelum memulai.

Prasyarat

  • Penyimpanan App Configuration, seperti yang ditunjukkan dalam tutorial untuk membuat penyimpanan.
  • Tutorial ini memerlukan Azure CLI versi 2.10.0 atau yang lebih baru. Jika menggunakan Azure Cloud Shell, versi terbaru sudah terpasang.

Membuat nilai kunci JSON di App Configuration

Nilai kunci JSON dapat dibuat menggunakan portal Microsoft Azure, Azure CLI, atau dengan mengimpor dari file JSON. Di bagian ini, Anda akan menemukan instruksi tentang membuat nilai kunci JSON yang sama menggunakan ketiga metode.

Membuat nilai kunci JSON menggunakan portal Microsoft Azure

Tambahkan nilai kunci berikut ke penyimpanan App Configuration. Biarkan Label dengan nilai defaultnya. Untuk informasi selengkapnya tentang cara menambahkan nilai kunci ke toko menggunakan portal Azure atau CLI, buka Buat nilai kunci.

Kunci Nilai Tipe Isi
Pengaturan:BackgroundColor "Hijau" application/json
Pengaturan:FontSize 24 application/json
Pengaturan:UseDefaultRouting salah application/json
Pengaturan:BlockedUsers nihil application/json
Pengaturan:ReleaseDate "2020-08-04T12:34:56.789Z" application/json
Pengaturan:RolloutPercentage [25,50,75,100] application/json
Pengaturan:Pengelogan {"Test":{"Level":"Debug"},"Prod":{"Level":"Warning"}} application/json
  1. Pilih Terapkan.

Membuat nilai kunci JSON menggunakan Azure CLI

Perintah berikut akan membuat nilai kunci JSON di penyimpanan App Configuration Anda. Ganti <appconfig_name> dengan nama toko App Configuration Anda.

appConfigName=<appconfig_name>
az appconfig kv set -n $appConfigName --content-type application/json --key Settings:BackgroundColor --value \"Green\"
az appconfig kv set -n $appConfigName --content-type application/json --key Settings:FontSize --value 24
az appconfig kv set -n $appConfigName --content-type application/json --key Settings:UseDefaultRouting --value false
az appconfig kv set -n $appConfigName --content-type application/json --key Settings:BlockedUsers --value null
az appconfig kv set -n $appConfigName --content-type application/json --key Settings:ReleaseDate --value \"2020-08-04T12:34:56.789Z\"
az appconfig kv set -n $appConfigName --content-type application/json --key Settings:RolloutPercentage --value [25,50,75,100]
az appconfig kv set -n $appConfigName --content-type application/json --key Settings:Logging --value {\"Test\":{\"Level\":\"Debug\"},\"Prod\":{\"Level\":\"Warning\"}}

Penting

Jika Anda menggunakan Azure CLI atau Azure Cloud Shell untuk membuat nilai kunci JSON, nilai yang disediakan harus berupa string JSON yang lolos.

Mengimpor nilai kunci JSON dari file

Buat file JSON yang disebut Import.json dengan konten berikut dan impor sebagai nilai kunci ke dalam App Configuration:

{
  "Settings": {
    "BackgroundColor": "Green",
    "BlockedUsers": null,
    "FontSize": 24,
    "Logging": {"Test":{"Level":"Debug"},"Prod":{"Level":"Warning"}},
    "ReleaseDate": "2020-08-04T12:34:56.789Z",
    "RolloutPercentage": [25,50,75,100],
    "UseDefaultRouting": false
  }
}
az appconfig kv import -s file --format json --path "~/Import.json" --content-type "application/json" --separator : --depth 2

Nota

Argumen --depth digunakan untuk meratakan data hierarkis dari file ke dalam nilai kunci. Dalam tutorial ini, kedalaman ditentukan untuk menunjukkan bahwa Anda juga dapat menyimpan objek JSON sebagai nilai dalam App Configuration. Jika kedalaman tidak ditentukan, objek JSON akan diratakan ke tingkat terdalam secara default.

Nilai kunci JSON yang Anda buat akan terlihat seperti ini di App Configuration:

Cuplikan layar yang memperlihatkan penyimpanan Konfigurasi yang berisi nilai kunci JSON.

Untuk memeriksa hal ini, buka sumber daya App Configuration Anda di portal Microsoft Azure dan buka Penjelajah konfigurasi.

Mengekspor nilai kunci JSON ke file

Salah satu manfaat utama menggunakan nilai kunci JSON adalah kemampuan untuk mempertahankan jenis data asli nilai Anda saat mengekspor. Jika nilai kunci di App Configuration tidak memiliki jenis konten JSON, nilainya akan diperlakukan sebagai string.

Pertimbangkan nilai kunci ini tanpa jenis konten JSON:

Kunci Nilai Tipe Isi
Pengaturan:FontSize 24
Pengaturan:UseDefaultRouting tidak benar

Saat Anda mengekspor nilai kunci ini ke file JSON, nilai akan diekspor sebagai string:

{
  "Settings": {
    "FontSize": "24",
    "UseDefaultRouting": "false"
  }
}

Namun, ketika Anda mengekspor nilai kunci JSON ke file, semua nilai akan mempertahankan jenis data aslinya. Untuk memverifikasi proses ini, ekspor nilai kunci dari App Configuration Anda ke file JSON. Anda akan melihat bahwa file yang diekspor memiliki konten yang sama dengan file yang Import.json sebelumnya Anda impor.

az appconfig kv export -d file --format json --path "~/Export.json" --separator :

Nota

Jika penyimpanan App Configuration Anda memiliki beberapa nilai kunci tanpa jenis konten JSON, mereka juga akan diekspor ke file yang sama dalam format string.

Mengkonsumsi nilai kunci JSON dalam aplikasi

Cara termudah untuk menggunakan kunci-nilai JSON di aplikasi Anda adalah melalui pustaka penyedia App Configuration. Dengan pustaka penyedia, Anda tidak perlu menerapkan penanganan khusus nilai kunci JSON di aplikasi Anda. Mereka akan diurai dan dikonversi agar sesuai dengan konfigurasi asli aplikasi Anda.

Misalnya, jika Anda memiliki nilai kunci berikut di App Configuration:

Kunci Nilai Tipe Isi
Pengaturan {"FontSize":24,"UseDefaultRouting":false} application/json

Konfigurasi aplikasi .NET Anda akan memiliki nilai kunci berikut:

Kunci Nilai
Pengaturan:FontSize 24
Pengaturan:UseDefaultRouting tidak benar

Anda dapat mengakses kunci baru secara langsung atau Anda dapat memilih untuk mengikat nilai konfigurasi ke instans objek .NET.

Penting

Dukungan asli untuk nilai kunci JSON tersedia di penyedia konfigurasi .NET versi 4.0.0 (atau yang lebih baru). Untuk informasi selengkapnya, buka bagian Langkah berikutnya .

Jika Anda menggunakan SDK atau REST API untuk membaca nilai kunci dari App Configuration, berdasarkan jenis konten, aplikasi Anda bertanggung jawab untuk mengurai nilai nilai kunci JSON.

Membersihkan sumber daya

Jika Anda tidak ingin terus menggunakan sumber daya yang dibuat dalam artikel ini, hapus grup sumber daya yang Anda buat di sini untuk menghindari biaya.

Penting

Penghapusan grup sumber daya tidak bisa dipulihkan. Grup sumber daya dan semua sumber daya di dalamnya dihapus secara permanen. Pastikan Anda tidak menghapus grup atau sumber daya yang salah secara tidak sengaja. Jika Anda membuat sumber daya untuk artikel ini di dalam grup sumber daya yang berisi sumber daya lain yang ingin Anda pertahankan, hapus setiap sumber daya satu per satu dari panel masing-masing, daripada menghapus grup sumber daya tersebut.

  1. Masuk ke portal Azure, lalu pilih Grup sumber daya.
  2. Dalam kotak Filter menurut nama, masukkan nama grup sumber daya Anda.
  3. Dalam daftar hasil, pilih nama grup sumber daya untuk melihat gambaran umum.
  4. Pilih Hapus grup sumber daya.
  5. Anda diminta untuk mengonfirmasi penghapusan grup sumber daya. Masukkan nama grup sumber daya Anda untuk mengonfirmasi, dan pilih Hapus.

Setelah beberapa saat, grup sumber daya dan semua sumber dayanya dihapus.

Langkah selanjutnya

Sekarang setelah Anda tahu cara bekerja dengan nilai kunci JSON di penyimpanan App Configuration Anda, buat aplikasi untuk menggunakan nilai kunci ini: