第一次上传文件到OSS上的时候成功,但是上传成功后再次上传的时候回报错误
有人知道是为什么么 谢谢了
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在您遇到的场景中,首次上传文件至阿里云对象存储(OSS)成功,但再次上传同一文件时出现错误,这可能是由以下几个原因造成的:
本地文件更改:如果在第二次上传前,本地的文件内容、名称或路径发生了改变,OSS将会视为一个全新的上传操作。根据断点续传的机制,这种情况下会重新上传所有分片,而不会继续之前的上传状态。
Checkpoint文件问题:SDK使用Checkpoint文件记录上传进度。如果这个文件损坏或者被误删除,那么即使文件本身没有变化,也会因为无法找到正确的断点信息而重新开始上传,或者报错。
Upload ID重复使用或无效:在分片上传或断点续传过程中,每个上传任务都有一个全局唯一的Upload ID。如果错误地复用了之前的成功Upload ID,或者Upload ID因某种原因变得无效(如上传已完全完成或被取消),尝试继续上传时会收到NoSuchUpload错误。
权限变更:确保用于第二次上传的账号或凭证仍然具有对目标Bucket的oss:PutObject权限。权限的变更可能导致原本可以执行的操作现在被拒绝。
网络或配置问题:尽管第一次上传成功,但网络环境的波动或OSS SDK配置的不一致也可能导致后续上传失败。请检查网络连接、Endpoint设置、Bucket名称、Object键等是否正确无误。
解决建议如下:
如果以上步骤不能解决问题,建议查看OSS的日志获取更详细的错误信息,并考虑联系阿里云技术支持进行进一步排查。