GOM*_*OMY 5 amazon-s3 amazon-web-services
当我尝试将空数据流式传输到 S3 时出现错误。
下面是错误:
java.lang.RuntimeException:
java.lang.RuntimeException:
java.lang.RuntimeException:
shaded.com.amazonaws.services.s3.model.AmazonS3Exception:
您提供的XML格式不正确或未根据我们发布的架构进行验证(服务:Amazon S3;状态代码:400;错误代码:MalformedXML;请求 ID:BC194D061F65DC3B),S3 扩展请求 ID:RjC6LY05Gj93iQTWAdjL/JcQBrl/NzMt749DOwpVsTJ2YN63A0EQmFWaBXxwHzBo+/a8A3MoP70=
有没有办法通过 Java SDK 输出流在 S3 中创建空文件?
绝对地!假设您正在执行多部分(根据最佳实践),您将需要为零字节文件开辟一个特殊情况:
AmazonS3 s3Client = /* your S3 client builder technique */
if ( contentLength == 0 ) {
s3Client.putObject( bucketName, targetKeyName,
new FileInputStream( file ), objectMetadata );
} else {
// Do your multipart upload per usual
}
Run Code Online (Sandbox Code Playgroud)
当请求零个部分时,分段上传会引发 MalformedXML 异常,但它不会在消息中明确指出这一点。请求的另一部分也可能格式错误,例如 ObjectMetadata 已损坏,尽管在这些情况下通常您会收到更清晰的异常消息。
| 归档时间: |
|
| 查看次数: |
6548 次 |
| 最近记录: |