【发布时间】:2013-09-26 04:21:39
【问题描述】:
我在删除其中一个存储桶中的对象时遇到问题,该存储桶在对象名称中使用斜杠来帮助组织。
例如,我的存储桶名称是wecombinate,我的对象名称是products/images/image1.png
当我尝试删除时,我得到“[BucketNotEmpty] 您尝试删除的存储桶不是空的”,好像我正在尝试删除整个存储桶,但我不是,我正在使用 DELETE 对象 REST API请求删除单个项目products/images/image1.png。
我正在使用流行的https://github.com/tpyo/amazon-s3-php-class PHP 类来管理 S3,代码看起来不错,而且在 GitHub 上没有报告任何问题。
删除代码:
$s3->deleteObject('wecombinate', 'products/images/image1.png');
在对象名称中使用斜杠是否存在已知问题?还有什么我可能遗漏的吗?
【问题讨论】:
-
试试这个。 S3::deleteObject('wecombinate','products/images/image1.png');
-
@IqbalMalik 是的,我就是这样做的......
-
此链接可能包含您需要的信息。 docs.aws.amazon.com/AmazonS3/latest/dev/…
-
@IqbalMalik 感谢您的链接。我已经阅读了亚马逊文档,不幸的是没有发现任何与我的问题相关的内容。
-
尝试使用前导斜杠:
$s3->deleteObject('wecombinate', '/products/images/image1.png'),看看是否有任何改变。
标签: php rest amazon-web-services amazon-s3