开发者社区> 问答> 正文

请问OSS的copyObject方法不支持文件夹里的文件么?

您好,


我正在使用OSS进行图片处理,项目为PHP项目,现有需求将目录 A下面的1.jpg拷贝到相同bucket下面B目录下面,不知应该如何操作? 尝试使用copyObject方法进行拷贝,但发现该方法只能将bucket根目录的图片拷贝到根目录,无法指定子目录地址。在souceobjectkey参数指定目录地址,会出现The specified key does not exist错误。不知道有没有解决方法可以解决类似的需求,谢谢!

展开
收起
眼里进了砂 2015-07-06 14:22:34 7996 0
5 条回答
写回答
取消 提交回答
  • 回2楼deadbeef的帖子
    十分感谢你的帮助,现在已经解决了该问题,多谢!
    2015-07-09 14:35:54
    赞同 展开评论 打赏
  • 阿里云对象存储(OSS)开发工程师
    回1楼robertzh的帖子
    顶deadbeaf
    2015-07-08 20:31:14
    赞同 展开评论 打赏
  • 回 2楼(deadbeef) 的帖子
    顶楼上
    2015-07-08 17:47:02
    赞同 展开评论 打赏
  • OSS本身没有目录的概念,目前是通过加/来模拟的,比如在bucket abc里有:
      log/2015.log
      jpg/small.jpg

    对于OSS而言,就是两个对象,一个叫log/2015.log,一个叫jpg/small.jpg。当然应用程序可以模拟成两个目录log/和jpg/。

    所以对于楼主的问题而言,就是CopyObject的时候把源设置为 log/2015.log,目的设置为 backup/2015.log即可以把bucket abc下面的文件log/2015.log拷贝到backup/2015.log了。
      
    2015-07-07 14:10:13
    赞同 展开评论 打赏
  • bucket就相当目录,所以你要新建bucket吧
    2015-07-07 05:43:12
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
OSS运维进阶实战手册 立即下载
《OSS运维基础实战手册》 立即下载
OSS运维基础实战手册 立即下载