使用MinIO预签名Post Policy上传文件遇单文件限制错误
解决MinIO预签名Post Policy上传报错问题
针对你遇到的POST requires exactly one file upload per request错误,按以下步骤排查解决:
- 检查文件字段名称:MinIO/S3的预签名POST上传要求文件字段必须命名为
file,不能用自定义名称(比如upload、attachment等)。在Postman的form-data里,把文件项的Key改成file。 - 确认请求体编码类型:确保Postman的请求Body选择的是
form-data类型,而不是x-www-form-urlencoded或raw,这是Multipart上传的必要格式。 - 验证Policy限制:将返回的
policy字段值进行Base64解码,检查其中的文件大小、有效期等限制是否和你上传的文件匹配。比如解码后如果看到content-length-range是[1024,1048576],那上传的文件必须在1KB到1MB之间,超出范围也会触发类似错误。 - 清理多余表单字段:检查Postman的form-data列表,确保没有多余的空字段或非必要字段,只保留预签名响应里的
formData所有项,加上名为file的文件项。 - 核对POST请求URL:直接使用预签名响应返回的
postURL作为请求地址,不要自行拼接bucket路径或添加额外参数。
内容的提问来源于stack exchange,提问作者mahdi
相关产品推荐
相关产品推荐

