Terraform如何从JSON字符串中单独提取password值?
正确提取Terraform JSON字符串中的password值
你的错误在于先尝试访问字符串的属性,再做JSON解析——local.data_json是原始字符串类型,直接加.password会试图访问字符串的属性,这在Terraform里不允许,所以报错。
正确的做法是先通过jsondecode把字符串解析成映射对象,再访问password字段:
output "ids1" { value = jsondecode(local.data_json).password }
原理说明:
jsondecode(local.data_json)会将你的JSON字符串转换为Terraform的map类型对象- 之后用
.运算符直接访问对象的password键,就能拿到对应的值
如果只是为了提取单个字段,完全不需要用values函数——values是用来提取映射中所有值的集合,单个字段直接访问属性更高效简洁。
内容的提问来源于stack exchange,提问作者Igor
相关产品推荐
相关产品推荐

