Cloudfront 分发的批量失效的 JSON 是什么样子的?
What does the JSON for batch invalidation of a Cloudfront distribution look like?
我正在尝试使用(截至目前)实验性 aws cloudfront
CLI tool 使 AWS Cloudfront 分布上的单个文件无效。我不知道如何格式化它期望传递给 --invalidation-batch
参数的 JSON。
我找到的唯一文档只解释了它期望的 XML,但我很难将其翻译成 JSON:http://docs.aws.amazon.com/AmazonCloudFront/latest/APIReference/CreateInvalidation.html
我试过:
{
"Paths" : {
"Quantity" : 1,
"Items" : ["/foobar.js"]
},
"CallerReference" : "foo-bar-baz"
}
有没有人用过这个并想出格式化 JSON?
您可以使用以下命令生成示例 JSON。
$ aws cloudfront create-invalidation --generate-cli-skeleton | vi -
输出:
{
"DistributionId": "",
"InvalidationBatch": {
"Paths": {
"Quantity": 0,
"Items": [
""
]
},
"CallerReference": ""
}
}
这是一个完整的工作示例,它是从 Bash 脚本执行的,包括处理为每个失效创建唯一 ID 的需要(对于我的目的而言这里足够唯一):
INVALIDATION_ID=$(date +"%S")
INVALIDATION_JSON="{
\"DistributionId\": \"YOUR_ID\",
\"InvalidationBatch\": {
\"Paths\": {
\"Quantity\": 2,
\"Items\": [
\"/foo.png\",
\"/bar.jpg\"
]
},
\"CallerReference\": \"$INVALIDATION_ID\"
}
}"
aws cloudfront create-invalidation --cli-input-json "$INVALIDATION_JSON"
我正在尝试使用(截至目前)实验性 aws cloudfront
CLI tool 使 AWS Cloudfront 分布上的单个文件无效。我不知道如何格式化它期望传递给 --invalidation-batch
参数的 JSON。
我找到的唯一文档只解释了它期望的 XML,但我很难将其翻译成 JSON:http://docs.aws.amazon.com/AmazonCloudFront/latest/APIReference/CreateInvalidation.html
我试过:
{
"Paths" : {
"Quantity" : 1,
"Items" : ["/foobar.js"]
},
"CallerReference" : "foo-bar-baz"
}
有没有人用过这个并想出格式化 JSON?
您可以使用以下命令生成示例 JSON。
$ aws cloudfront create-invalidation --generate-cli-skeleton | vi -
输出:
{
"DistributionId": "",
"InvalidationBatch": {
"Paths": {
"Quantity": 0,
"Items": [
""
]
},
"CallerReference": ""
}
}
这是一个完整的工作示例,它是从 Bash 脚本执行的,包括处理为每个失效创建唯一 ID 的需要(对于我的目的而言这里足够唯一):
INVALIDATION_ID=$(date +"%S")
INVALIDATION_JSON="{
\"DistributionId\": \"YOUR_ID\",
\"InvalidationBatch\": {
\"Paths\": {
\"Quantity\": 2,
\"Items\": [
\"/foo.png\",
\"/bar.jpg\"
]
},
\"CallerReference\": \"$INVALIDATION_ID\"
}
}"
aws cloudfront create-invalidation --cli-input-json "$INVALIDATION_JSON"