获取新上载的CloudFiles资产的公共URL

时间:2013-02-16 12:47:58

标签: rackspace cloudfiles

将新资产上传到CloudFiles存储时,我想获取此资产的公共URL(如果容器已启用CDN)。我想出了这样做的唯一方法是向RackSpace发出3个(是的,3个!)请求:

  1. 对用户进行身份验证并获取x-auth-tokenx-storage-urlx-cdn-management-url
  2. 获取所有令牌和URL后,将文件上传到容器中。
  3. x-cdn-management-url发出HEAD请求以获取容器的公共URL。
  4. 我只想确保每次上传时确实需要3个请求才能获取刚上传的资产的公开网址。所有操作必须通过API以编程方式执行。

2 个答案:

答案 0 :(得分:4)

我相信一旦你拥有容器的CDN URL,你输入的每个对象都会附加到它上面。因此,如果您的容器的CDN网址为cdn1.foo.cloudstorage.com,则您的对象将包含网址cdn1.foo.cloudstorage.com/object1.extcdn1.foo.cloudstorage.com/object2.ext等。

您只需要三个步骤即可获取初始容器CDN URL。之后,这很简单。

答案 1 :(得分:1)

如果您使用的是Java,PHP或Python,请结帐Rackspace SDKs之一。有关如何使用CDN的示例,请参阅:

  1. Java:CloudFilesPublish.java
  2. PHP:cdn.php
  3. Python:container_cdn.py