S3 Bucket CORS配置不被接受 报错Expected params.CORSConfiguration.CORSRules to be an Array
S3 CORS 配置报错解决方案
错误根因
你提交的CORS配置存在JSON语法错误,导致S3无法将其解析为符合要求的CORSRules数组:
AllowedMethods数组的最后一个元素"POST"后多了多余的尾逗号,标准JSON语法不允许数组或对象的最后一个元素后带有逗号,该错误会直接触发解析失败,系统无法识别传入的内容为数组结构。
修复后的合法配置
直接替换为如下配置即可正常提交:
[ { "AllowedHeaders": [ "*" ], "AllowedMethods": [ "GET", "PUT", "POST" ], "AllowedOrigins": [ "*" ], "ExposeHeaders": [], "MaxAgeSeconds": 3000 } ]
补充说明
如果是通过AWS CLI、SDK等编程方式提交CORS配置,需要确保参数外层结构符合AWS接口要求,不要直接将规则数组作为顶层参数传入:
{ "CORSConfiguration": { "CORSRules": [ // 上述CORS规则填入此处 ] } }
内容的提问来源于stack exchange,提问作者David Cantu
相关产品推荐
相关产品推荐

