本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Fn::ToJsonString
內部函數會將物件或陣列轉換為其對應的 JSON 字串。
重要
您必須借助 AWS::LanguageExtensions 轉換來使用 Fn::ToJsonString
內部函數。
宣告
JSON
{ "Fn::ToJsonString": Object
}
{ "Fn::ToJsonString": Array
}
YAML
Fn::ToJsonString: Object
Fn::ToJsonString: Array
參數
Object
-
要轉換為 JSON 字串的物件。
Array
-
要轉換為 JSON 字串的陣列。
傳回值
已轉換為 JSON 字串的物件或陣列。
範例
將物件轉換為 JSON 字串
此範例程式碼片段會將傳遞至內部函數的物件轉換為 JSON 字串。
JSON
{
//...
"Transform": "AWS::LanguageExtensions"
//...
"Fn::ToJsonString": {
"key1": "value1",
"key2": {
"Ref": "ParameterName"
}
}
//...
}
YAML
Transform: 'AWS::LanguageExtensions'
#...
Fn::ToJsonString:
key1: value1
key2: !Ref ParameterName
#...
在這兩個範例中,如果 Ref
至 ParameterName
解析為 resolvedValue
,則函數會解析為下列 JSON 字串:
"{\"key1\":\"value1\",\"key2\":\"resolvedValue\"}"
將陣列轉換為 JSON 字串
此範例程式碼片段會將傳遞至內部函數的陣列轉換為 JSON 字串。
JSON
{
//...
"Transform": "AWS::LanguageExtensions"
//...
"Fn::ToJsonString": [{
"key1": "value1",
"key2": {
"Ref": "ParameterName"
}
}]
//...
}
YAML
Transform: 'AWS::LanguageExtensions'
#...
Fn::ToJsonString:
- key1: value1
key2: !Ref ParameterName
#...
在這兩個範例中,如果 Ref
至 ParameterName
解析為 resolvedValue
,則函數會解析為下列 JSON 字串:
"[{\"key1\":\"value1\"},{\"key2\":\"resolvedValue\"}]"
支援的函數
您可以在 Fn::ToJsonString
內部函數或陣列中使用下列函數:
-
Fn::Base64
-
Fn::FindInMap
-
Fn::GetAtt
-
Fn::GetAZs
-
Fn::If
-
Fn::ImportValue
-
Fn::Join
-
Fn::Length
-
Fn::Select
-
Fn::Split
-
Fn::Sub
-
Fn::ToJsonString
-
Ref