jsonencode 함수
jsonencode 함수 (jsonencode Function)
jsonencode 함수는 주어진 값을 JSON 문법을 사용해 문자열로 인코딩해요. JSON 인코딩은 RFC 7159에 정의돼 있어요.
출처: 문서
본문
jsonencode 함수는 주어진 값을 JSON 문법을 사용해 문자열로 인코딩해요. JSON 인코딩은 RFC 7159에 정의돼 있어요.
이 함수는 Terraform 언어 값을 JSON 값으로 다음과 같이 매핑해요.
| Terraform 타입 | JSON 타입 |
|---|---|
string |
String |
number |
Number |
bool |
Bool |
list(...) |
Array |
set(...) |
Array |
tuple(...) |
Array |
map(...) |
Object |
object(...) |
Object |
| null 값 | null |
JSON 형식은 Terraform 언어의 모든 타입을 완전히 표현할 수 없으므로, jsonencode 결과를 jsondecode에 전달해도 완전히 동일한 값이 되지는 않아요. 다만 자동 타입 변환 규칙 덕분에 실제로는 문제가 되는 경우가 거의 없어요.
문자열을 인코딩할 때 이 함수는 일부 문자를 유니코드 이스케이프 시퀀스로 이스케이프해요. <, >, &, U+2028, U+2029를 각각 \u003c, \u003e, \u0026, \u2028, \u2029로 바꿔요. 이는 Terraform 0.11 동작과의 호환성을 유지하기 위한 것이에요.
jsonencode 명령은 입력의 minified(공백 제거) 표현을 출력해요.
예시 (Examples)
> jsonencode({"hello"="world"})
{"hello":"world"}
관련 함수 (Related Functions)
jsondecode— JSON 문자열을 디코딩해 그 값을 얻는 반대 연산을 수행해요.
더 알아보기 (Learn more)
jsondecode함수 — JSON 디코딩yamldecode함수 — YAML 디코딩- 인코딩 함수 — 다른 인코딩 함수