데이터는 기본적으로 값이 문자열 형식으로 처리되는 키-값으로 App Configuration에 저장됩니다. 그러나 각 키-값과 연결된 콘텐츠 형식 속성을 사용하여 사용자 지정 형식을 지정할 수 있습니다. 이 프로세스는 원래 데이터 형식을 유지하거나 콘텐츠 형식에 따라 애플리케이션이 다르게 동작하도록 합니다.
개요
App Configuration에서 JSON 미디어 형식을 키-값의 콘텐츠 형식으로 사용하여 다음과 같은 이점을 활용할 수 있습니다.
- 더 간단한 데이터 관리: 배열과 같은 키-값을 관리하는 것이 Azure Portal에서 훨씬 쉬워집니다.
- 향상된 데이터 내보내기: 데이터를 내보내는 동안 기본 형식, 배열 및 JSON 개체가 유지됩니다.
- App Configuration 공급자를 사용한 기본 지원: JSON 콘텐츠 형식의 키 값은 애플리케이션의 App Configuration 공급자 라이브러리에서 사용하는 경우 제대로 작동합니다.
유효한 JSON 콘텐츠 형식
여기에 정의된 대로 미디어 형식을 각 키-값과 연결된 콘텐츠 형식에 할당할 수 있습니다.
미디어 형식은 형식과 하위 형식으로 구성됩니다. 형식이 application
고 하위 형식(또는 접미사) json
이면 미디어 형식은 유효한 JSON 콘텐츠 형식으로 간주됩니다.
유효한 JSON 콘텐츠 형식의 몇 가지 예는 다음과 같습니다.
application/json
application/activity+json
application/vnd.foobar+json;charset=utf-8
유효한 JSON 값
키-값에 JSON 콘텐츠 형식이 있는 경우 클라이언트가 올바르게 처리하려면 해당 값이 유효한 JSON 형식이어야 합니다. 그렇지 않으면, 클라이언트가 실패하거나, 후속 조치로 문자열 형식으로 처리할 수도 있습니다. 유효한 JSON 값의 몇 가지 예는 다음과 같습니다.
"John Doe"
723
false
null
"2020-01-01T12:34:56.789Z"
[1, 2, 3, 4]
{"ObjectSetting":{"Targeting":{"Default":true,"Level":"Information"}}}
비고
이 문서의 나머지 부분에 대해 유효한 JSON 콘텐츠 형식과 유효한 JSON 값을 가진 App Configuration의 키 -값을 JSON 키 값이라고 합니다.
이 자습서에서는 다음 방법을 알아봅니다.
- App Configuration에서 JSON 키 값을 만듭니다.
- JSON 파일에서 JSON 키-값을 가져옵니다.
- JSON 키-값을 JSON 파일로 내보냅니다.
- 애플리케이션에서 JSON 키 값을 사용합니다.
Azure 계정이 없는 경우 시작하기 전에 체험 계정을 만듭니다.
필수 조건
Bash 환경을 Azure Cloud Shell에서 사용합니다. 자세한 내용은 Azure Cloud Shell 시작을 참조하세요.
CLI 참조 명령을 로컬에서 실행하려면 Azure CLI를 설치하십시오. Windows 또는 macOS에서 실행하는 경우 Docker 컨테이너에서 Azure CLI를 실행하는 것이 좋습니다. 자세한 내용은 Docker 컨테이너에서 Azure CLI를 실행하는 방법을 참조하세요.
로컬 설치를 사용하는 경우 az login 명령을 사용하여 Azure CLI에 로그인합니다. 인증 프로세스를 완료하려면 터미널에 표시되는 단계를 수행합니다. 다른 로그인 옵션은 Azure CLI를 사용하여 Azure에 인증을 참조하세요.
메시지가 표시되면 처음 사용할 때 Azure CLI 확장을 설치합니다. 확장에 대한 자세한 내용은 Azure CLI로 확장 사용 및 관리를 참조하세요.
az version을 실행하여 설치된 버전과 관련 종속 라이브러리를 확인합니다. 최신 버전으로 업그레이드하려면 az upgrade를 실행합니다.
- 애플리케이션 구성 저장소. 저장소를 만듭니다.
- 이 자습서에는 Azure CLI 버전 2.10.0 이상이 필요합니다. Azure Cloud Shell을 사용하는 경우 최신 버전이 이미 설치되어 있습니다.
App Configuration에서 JSON 키 값 만들기
JSON 키 값은 Azure Portal, Azure CLI를 사용하거나 JSON 파일에서 가져와서 만들 수 있습니다. 이 섹션에서는 세 가지 메서드를 모두 사용하여 동일한 JSON 키 값을 만드는 방법에 대한 지침을 찾을 수 있습니다.
Azure Portal을 사용하여 JSON 키 값 만들기
App Configuration 저장소에 다음 키-값을 추가합니다. 레이블을 기본값으로 둡니다. Azure Portal 또는 CLI를 사용하여 저장소에 키-값을 추가하는 방법에 대한 자세한 내용은 키-값 만들기로 이동합니다.
열쇠 | 가치 | 콘텐츠 형식 |
---|---|---|
설정:BackgroundColor | "녹색" | application/json |
설정:FontSize | 24 | application/json |
설정:기본 라우팅 사용 | false | application/json |
설정:BlockedUsers | 없음 | application/json |
설정:출시일 | "2020-08-04T12:34:56.789Z" | application/json |
설정: 배포 비율 | [25,50,75,100] | application/json |
설정:로깅 | {"Test":{"Level":"Debug"},"Prod":{"Level":"Warning"}} | application/json |
- 적용을 선택합니다.
Azure CLI를 사용하여 JSON 키 값 만들기
다음 명령은 App Configuration 저장소에 JSON 키 값을 만듭니다.
<appconfig_name>
를 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\"}}
중요합니다
Azure CLI 또는 Azure Cloud Shell을 사용하여 JSON 키 값을 만드는 경우 제공된 값은 이스케이프된 JSON 문자열이어야 합니다.
파일에서 JSON 키-값 가져오기
다음 내용을 포함하는 JSON 파일 Import.json
을 만들고 이를 키-값으로 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
비고
이 --depth
인수는 파일에서 키-값으로 계층적 데이터를 평면화하기 위해 사용됩니다. 이 자습서에서는 App Configuration에서 JSON 개체를 값으로 저장할 수도 있음을 보여 주는 깊이를 지정합니다. 깊이를 지정하지 않으면 기본적으로 JSON 개체가 가장 깊은 수준으로 평면화됩니다.
만든 JSON 키 값은 App Configuration에서 다음과 같이 표시됩니다.
이를 확인하려면 Azure Portal에서 App Configuration 리소스를 열고 구성 탐색기로 이동합니다.
JSON 키-값을 파일로 내보내기
JSON 키-값을 사용할 경우의 주요 이점 중 하나는 내보내는 동안 값의 원래 데이터 형식을 유지할 수 있다는 것입니다. App Configuration의 키-값에 JSON 콘텐츠 형식이 없으면 해당 값이 문자열로 처리됩니다.
JSON 콘텐츠 형식이 없는 키-값을 고려합니다.
열쇠 | 가치 | 콘텐츠 형식 |
---|---|---|
설정:글꼴 크기 | 24 | |
설정:기본 라우팅 사용 | 거짓 |
이러한 키 값을 JSON 파일로 내보내면 값이 문자열로 내보내됩니다.
{
"Settings": {
"FontSize": "24",
"UseDefaultRouting": "false"
}
}
그러나 JSON 키 값을 파일로 내보내면 모든 값은 원래 데이터 형식을 유지합니다. 이 프로세스를 확인하려면 App Configuration에서 JSON 파일로 키-값을 내보냅니다. 내보낸 파일의 내용은 이전에 가져온 Import.json
파일과 동일합니다.
az appconfig kv export -d file --format json --path "~/Export.json" --separator :
비고
App Configuration 저장소에 JSON 콘텐츠 형식이 없는 일부 키-값이 있는 경우 문자열 형식의 동일한 파일로도 내보냅니다.
애플리케이션에서 JSON 키 값 사용
애플리케이션에서 JSON 키 값을 사용하는 가장 쉬운 방법은 App Configuration 공급자 라이브러리를 사용하는 것입니다. 공급자 라이브러리를 사용하면 애플리케이션에서 JSON 키 값의 특수 처리를 구현할 필요가 없습니다. 애플리케이션의 네이티브 구성과 일치하도록 구문 분석 및 변환됩니다.
예를 들어 App Configuration에 다음 키-값이 있는 경우:
열쇠 | 가치 | 콘텐츠 형식 |
---|---|---|
설정 | {"FontSize":24,"UseDefaultRouting":false} | application/json |
.NET 애플리케이션 구성에는 다음과 같은 키 값이 있습니다.
열쇠 | 가치 |
---|---|
설정:글꼴 크기 | 24 |
설정:기본 라우팅 사용 | 거짓 |
새 키에 직접 액세스하거나 구성 값을 .NET 개체 인스턴스에 바인딩하도록 선택할 수 있습니다.
중요합니다
JSON 키 값에 대한 기본 지원은 .NET 구성 공급자 버전 4.0.0 이상에서 사용할 수 있습니다. 자세한 내용은 다음 단계 섹션을 참조하세요.
SDK 또는 REST API를 사용하여 콘텐츠 형식에 따라 App Configuration에서 키-값을 읽는 경우 애플리케이션은 JSON 키-값의 값을 구문 분석합니다.
자원을 정리하세요
이 문서에서 만든 리소스를 계속 사용하지 않으려면 여기서 만든 리소스 그룹을 삭제하여 요금이 부과되지 않도록 합니다.
중요합니다
리소스 그룹을 삭제하면 다시 되돌릴 수 없습니다. 리소스 그룹 및 포함된 모든 리소스가 영구적으로 삭제됩니다. 잘못된 리소스 그룹 또는 리소스를 자동으로 삭제하지 않도록 합니다. 유지하려는 다른 리소스가 포함된 리소스 그룹 내에서 이 문서에 대한 리소스를 만든 경우 리소스 그룹을 삭제하는 대신 해당 창에서 각 리소스를 개별적으로 삭제합니다.
- Azure Portal에 로그인하고 리소스 그룹을 선택합니다.
- 이름으로 필터링 상자에서 리소스 그룹의 이름을 입력합니다.
- 결과 목록에서 리소스 그룹 이름을 선택하여 개요를 확인합니다.
- 리소스 그룹 삭제를 선택합니다.
- 리소스 그룹 삭제를 확인하는 메시지가 표시됩니다. 리소스 그룹의 이름을 입력하여 확인하고 삭제를 선택합니다.
잠시 후, 리소스 그룹 및 모든 해당 리소스가 삭제됩니다.
다음 단계
이제 App Configuration 저장소에서 JSON 키-값을 사용하는 방법을 알고 있으므로 다음 키-값을 사용하는 애플리케이션을 만듭니다.