Amazon s3 在HTTP POST Amazon S3上载策略文档中允许多种内容类型

Amazon s3 在HTTP POST Amazon S3上载策略文档中允许多种内容类型,amazon-s3,Amazon S3,有人知道在使用HTTP POST上传时如何在AmazonS3上传策略中允许多种内容类型吗?我似乎在任何地方都找不到这个问题的答案 我知道我可以将上载限制为任何MIME类型以“image/”开头的文件,如下所示: {"expiration": "2015-02-28T00:00:00Z", "conditions": [ ["starts-with", "$Content-Type", "image/*"] ] } 但是,我如何才能只允许某些MIME类型,而这些MIME类型可能

有人知道在使用HTTP POST上传时如何在AmazonS3上传策略中允许多种内容类型吗?我似乎在任何地方都找不到这个问题的答案

我知道我可以将上载限制为任何MIME类型以“image/”开头的文件,如下所示:

{"expiration": "2015-02-28T00:00:00Z",
  "conditions": [ 
    ["starts-with", "$Content-Type", "image/*"]
  ]
}

但是,我如何才能只允许某些MIME类型,而这些MIME类型可能不都以相同的字符开头?

这是不受支持的。它要么是单个模式匹配(包括通配符),要么必须允许所有模式匹配

根据表单的生成方式(假设是动态生成的),在请求生成表单的资源时,您可以简单地告诉应用程序要上载的文件的内容类型,从而告诉应用程序要在表单上使用什么内容类型值以及在生成策略文档时使用什么内容类型值

如果应用程序在其可接受值列表中找不到该内容类型,它可以拒绝呈现表单,并拒绝创建和签署匹配的策略语句

根据应用程序的不同,可能没有必要过分担心此处的
内容类型
字段,因为这实际上并不限制可以上载的内容类型。。。它仅限制在
input type=“input”name=“Content type”
value
参数中传递的值。这就是所有这些限制

没有验证该值是否准确表示正在更新的负载的MIME类型,因此策略文档没有限制您可以上载的内容类型。这只是限制了你可以声称正在上传的内容的种类

更合适的做法可能是只接受无法使用的上传,然后在事后在后端处理问题