OSS分片上传文件时提示NoSuchUpload错误

问题描述

阿里云对象存储OSS分片上传或断点续传文件时,返回NoSuchUpload错误码,详细报错如下:

The specified upload does not exist. The upload ID may be invalid, or the upload may have been aborted or completed.

问题原因

分片上传或者断点续传时,调用UploadPart接口指定的upload ID不存在,部分分片上传成功,但最终未完成上传。

解决方案

在分片上传或断点续传时,以调用CompleteMultipartUpload接口返回的HTTP状态码200以及requestId为准。建议检查下您在接口调用时记录的UploadId是否准确,或者检查对应的UploadId是否已经上传完成,详情请参见InitiateMultipartUpload

更多信息

分片上传过程分以下三步:

  1. 初始化一个分片上传事件: 调用ossClient.initiateMultipartUpload方法返回OSS创建的全局唯一的UploadId。

  2. 上传分片: 调用ossClient.uploadPart方法上传分片数据。

  3. 完成分片上传: 所有分片上传完成后,调用ossClient.completeMultipartUpload方法将所有分片合并成完整的文件。

适用于

  • 对象存储OSS