我在 Java 应用程序中使用 Rackspace Cloud Files (Openstack Swift),并且有以下场景:我将文件上传到容器(从 web 应用程序,通过我的 java rest 后端)到 rackspace 容器中的临时位置,然后,当发生了一些事件(用户确认表单保存),我需要将这些文件移动到该(相同)容器中的持久位置。
我需要从我的网络应用程序下载这些文件,所以在上传文件时我指定标题:
Content-Disposition=attachment;filename=thefilename.xxx
我还为我的临时存储X-Delete-At中的文件指定了标题,因此如果用户不保存表单,它们可以自动删除。
对于复制文件,我使用ObjectApi的方法:
boolean copy(String destinationObject, String sourceContainer, String sourceObject)
它复制文件内容、文件元数据,但不复制 Content-Disposition。复制后好像没有办法设置。
问题是Cloud Files REST API允许为复制的目标文件指定 Content-Disposition 标头,但 Java API 不允许。我想知道是否有办法扩展该 API 或以某种方式使用所需的标头调用该服务。