Utiliser le type de contenu pour stocker des valeurs de clés JSON dans App Configuration
Les données sont stockées dans la configuration de l’application en tant que valeurs de clés, où les valeurs sont traitées par défaut en tant que type de chaîne. Toutefois, vous pouvez spécifier un type personnalisé à l’aide de la propriété de type de contenu associée à chaque clé-valeur. Ce processus conserve le type d’origine de vos données ou fait en sorte que votre application se comporte différemment en fonction du type de contenu.
Vue d’ensemble
Dans App Configuration, vous pouvez utiliser le type de média JSON comme type de contenu de vos valeurs de clés pour bénéficier des avantages suivants :
- Gestion des données plus simple : La gestion des valeurs de clés, comme les tableaux, est beaucoup plus facile dans le Portail Azure.
- Exportation de données améliorée : Les types primitifs, les tableaux et les objets JSON sont conservés lors de l’exportation des données.
- Support natif avec le fournisseur App Configuration : Les valeurs de clés avec le type de contenu JSON fonctionnent correctement lorsqu’elles sont consommées par les bibliothèques du fournisseur App Configuration dans vos applications.
Type de contenu JSON valide
Les types de médias, tels que définis ici, peuvent être attribués au type de contenu associé à chaque clé-valeur.
Un type de média se compose d’un type et d’un sous-type. Si le type est application
et que le sous-type (ou suffixe) est json
, le type de média sera considéré comme un type de contenu JSON valide.
Voici quelques exemples de types de contenu JSON valides :
application/json
application/activity+json
application/vnd.foobar+json;charset=utf-8
Valeurs JSON valides
Lorsqu’une clé-valeur a un type de contenu JSON, sa valeur doit être au format JSON valide pour que les clients la traitent correctement. Dans le cas contraire, les clients peuvent échouer ou revenir en arrière et la traiter en tant que format de chaîne. Exemples de valeurs JSON valides :
"John Doe"
723
false
null
"2020-01-01T12:34:56.789Z"
[1, 2, 3, 4]
{"ObjectSetting":{"Targeting":{"Default":true,"Level":"Information"}}}
Notes
Pour le reste de cet article, toute clé-valeur dans App Configuration qui possède un type de contenu JSON valide et une valeur JSON valide sera appelée clé-valeur JSON.
Dans ce tutoriel, vous apprendrez à :
- Créer des valeurs de clés JSON dans App Configuration.
- Importer des valeurs de clés JSON à partir d’un fichier JSON.
- Exporter des valeurs de clés JSON à partir d’un fichier JSON.
- Utiliser des valeurs de clé JSON dans vos applications.
Si vous n’avez pas d’abonnement Azure, créez un compte gratuit Azure avant de commencer.
Prérequis
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour plus d’informations, consultez Démarrage rapide pour Bash dans Azure Cloud Shell.
Si vous préférez exécuter les commandes de référence de l’interface de ligne de commande localement, installez l’interface Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Guide pratique pour exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour finir le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour connaître les autres options de connexion, consultez Se connecter avec Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
- Un magasin App Configuration. Créez un magasin.
- Cet tutoriel nécessite la version 2.10.0 ou ultérieure d’Azure CLI. Si vous utilisez Azure Cloud Shell, la version la plus récente est déjà installée.
Créer des valeurs de clés JSON dans App Configuration
Les valeurs de clés JSON peuvent être créées à l’aide du Portail Azure, d’Azure CLI ou d’une importation à partir d’un fichier JSON. Dans cette section, vous trouverez des instructions sur la création des mêmes valeurs de clés JSON à l’aide des trois méthodes.
Créer des valeurs de clés JSON à l’aide du Portail Azure
Ajoutez les valeurs de clés suivantes au magasin App Configuration. Laissez Label avec sa valeur par défaut. Pour plus d’informations sur l’ajout de clés-valeurs à un magasin avec le Portail Azure ou l’interface CLI, consultez Création d’une clé-valeur.
Clé | Valeur | Type de contenu |
---|---|---|
Settings:BackgroundColor | « Vert » | application/json |
Settings:FontSize | 24 | application/json |
Settings:UseDefaultRouting | false | application/json |
Settings:BlockedUsers | null | application/json |
Settings:ReleaseDate | « 2020-08-04T12:34:56.789Z » | application/json |
Settings:RolloutPercentage | [25,50,75,100] | application/json |
Settings:Logging | {"Test":{"Level":"Debug"},"Prod":{"Level":"Warning"}} | application/json |
- Sélectionnez Appliquer.
Créer des valeurs de clés JSON à l’aide d’Azure CLI
Les commandes suivantes créent des valeurs de clés JSON dans votre magasin App Configuration. Remplacez <appconfig_name>
par le nom de votre magasin App Configuration.
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\"}}
Important
Si vous utilisez Azure CLI ou Azure Cloud Shell pour créer des valeurs de clés JSON, la valeur fournie doit être une chaîne JSON placée dans une séquence d’échappement.
Importer des valeurs de clés JSON à partir d’un fichier
Créez un fichier JSON nommé Import.json
avec le contenu suivant et importez-le en tant que valeurs de clés dans 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
Notes
L’argument --depth
est utilisé pour aplatir des données hiérarchiques d’un fichier dans des clés-valeurs. Dans ce tutoriel, une profondeur est spécifiée pour démontrer que vous pouvez également stocker des objets JSON en tant que valeurs dans App Configuration. Si la profondeur n’est pas spécifiée, les objets JSON sont aplatis au niveau le plus profond par défaut.
Les valeurs de clés JSON que vous avez créées doivent ressembler à ceci dans App Configuration :
Pour case activée cela, ouvrez votre ressource App Configuration dans le Portail Azure et accédez à l’Explorateur configuration.
Exporter des valeurs de clés JSON à partir d’un fichier
L’un des principaux avantages de l’utilisation des valeurs de clés JSON est la possibilité de conserver le type de données d’origine de vos valeurs lors de l’exportation. Si une clé-valeur dans App Configuration n’a pas de type de contenu JSON, sa valeur sera traitée comme une chaîne.
Considérez ces valeurs de clés sans type de contenu JSON :
Clé | Valeur | Type de contenu |
---|---|---|
Settings:FontSize | 24 | |
Settings:UseDefaultRouting | false |
Lorsque vous exportez ces valeurs de clés vers un fichier JSON, les valeurs sont exportées sous forme de chaînes :
{
"Settings": {
"FontSize": "24",
"UseDefaultRouting": "false"
}
}
Toutefois, lorsque vous exportez des valeurs de clés JSON dans un fichier, toutes les valeurs conservent leur type de données d’origine. Pour vérifier ce processus, exportez les valeurs de clés de la configuration de votre application vers un fichier JSON. Vous verrez que le fichier exporté a le même contenu que le fichier Import.json
que vous avez importé précédemment.
az appconfig kv export -d file --format json --path "~/Export.json" --separator :
Notes
Si votre magasin App Configuration a des valeurs de clés sans type de contenu JSON, elles seront également exportées vers le même fichier au format de chaîne.
Utiliser des valeurs de clés JSON dans des applications
Le moyen le plus simple d’utiliser des valeurs de clés JSON dans votre application est d’utiliser les bibliothèques du fournisseur App Configuration. Avec les bibliothèques du fournisseur, vous n’avez pas besoin d’implémenter une gestion spéciale des valeurs de clés JSON dans votre application. Elles seront analysées et converties pour correspondre à la configuration native de votre application.
Par exemple, si vous avez la paire clé-valeur suivante dans App Configuration :
Clé | Valeur | Type de contenu |
---|---|---|
Paramètres | {"FontSize":24,"UseDefaultRouting":false} | application/json |
La configuration de votre application .NET comprendra les paires clé-valeur suivantes :
Clé | Valeur |
---|---|
Settings:FontSize | 24 |
Settings:UseDefaultRouting | false |
Vous pouvez accéder directement aux nouvelles clés, ou choisir de lier des valeurs de configuration à des instances d’objets .NET.
Important
Le support natif des valeurs de clés JSON est disponible dans la version 4.0.0 (ou ultérieure) du fournisseur de la configuration .NET. Pour plus d’informations, accédez à la section Étapes suivantes.
Si vous utilisez le Kit de développement logiciel (SDK) ou l’API REST pour lire les valeurs de clés d’App Configuration, en fonction du type de contenu, votre application est responsable de l’analyse de la valeur d’une paire clé-valeur JSON.
Nettoyer les ressources
Si vous ne souhaitez plus utiliser les ressources créées dans cet article, supprimez le groupe de ressources que vous avez créé ici afin d’éviter des frais.
Important
La suppression d’un groupe de ressources est irréversible. Le groupe de ressources et toutes les ressources qu’il contient sont supprimés définitivement. Veillez à ne pas supprimer accidentellement les mauvaises ressources ou le mauvais groupe de ressources. Si vous avez créé les ressources pour cet article dans un groupe de ressources contenant d’autres ressources que vous souhaitez conserver, supprimez chaque ressource individuellement à partir de son volet, au lieu de supprimer l’intégralité du groupe de ressources.
- Connectez-vous au portail Azure, puis sélectionnez Groupes de ressources.
- Dans la zone Filtrer par nom, entrez le nom de votre groupe de ressources.
- Dans la liste de résultats, sélectionnez le nom du groupe de ressources pour afficher une vue d’ensemble.
- Sélectionnez Supprimer le groupe de ressources.
- Vous êtes invité à confirmer la suppression du groupe de ressources. Entrez le nom de votre groupe de ressources à confirmer, puis sélectionnez Supprimer.
Après quelques instants, le groupe de ressources et toutes ses ressources sont supprimés.
Étapes suivantes
Maintenant que vous savez comment utiliser les valeurs de clés JSON dans votre magasin App Configuration, créez une application pour utiliser ces valeurs de clés :