问题描述
PostObject请求policy表单域中Conditions部分某个参数类型有误。
问题原因
您发起了PostObject请求来上传文件,但是请求Post Policy中的conditions部分存在某个匹配条件的参数类型有误,导致请求错误。
问题示例
以下示例中使用了“not-in”的匹配条件,该匹配条件要求第二个参数类型是一个列表。而示例中第二个参数类型为字符串"no-cache"
,与接口要求不相符,导致请求错误。
{
"expiration": "2023-02-19T13:19:00.000Z",
"conditions": [
["not-in", "cache-control", "no-cache"]
]
}
解决方案
您可以参考以下多种匹配条件配置正确的示例。
{
"expiration": "2023-02-19T13:19:00.000Z",
"conditions": [
["content-length-range", 1, 1024],
["eq", "$success_action_status", "201"],
["starts-with", "$key", "user/eric/"],
["in", "$content-type", ["image/jpg", "image/png"]],
["not-in", "$cache-control", ["no-cache"]]
]
}
相关文档
关于Post Policy的更多信息,请参见附录:Post Policy。
关于Web端表单直传OSS的示例,请参见JavaScript客户端签名直传。
关于调用PostObject接口的常见错误及解决方法,请参见Post Object错误及排查。
文档内容是否对您有帮助?