【问题标题】:How to get Rackspace Cloud object header如何获取 Rackspace Cloud 对象标头
【发布时间】:2015-04-20 15:08:04
【问题描述】:

我正在尝试 update 我上传的一些 Rackspace 对象的标头数据。示例标头attribute 喜欢:X-Object-Meta-name

但要做到这一点,目前我需要从下载的对象中下载整个 objectparseheader。然后根据需要进行一些检查和更新,然后再次上传对象。但这使得更新过程非常缓慢。

有没有办法只下载objectheader 部分并单独更新它?提前致谢!

【问题讨论】:

    标签: java rackspace-cloud rackspace-cloudfiles


    【解决方案1】:

    https://github.com/jclouds/jclouds/blob/master/apis/openstack-swift/src/main/java/org/jclouds/openstack/swift/v1/features/ObjectApi.java#L207

    如果你给它一个带有“名称”->“更新的标头值”的映射,它应该更新标头并自动添加 x-object-meta- 前缀。

    【讨论】:

      【解决方案2】:

      有没有办法只下载对象的标头部分并单独更新它?

      我不是 Java 开发人员,但 Cloud Files API 是 RESTful API,因此我将提供使用 curl 的示例。如果您使用的是库,那么您可能希望编辑您的问题以包括哪个库,因为其中许多抽象了这些操作,并且可能在该库的上下文中提供更好的答案。

      要下载没有对象内容的标头,请执行 HTTP HEAD 请求。

      $ curl -I -XHEAD -H'X-Auth-Token:******' \
      > https://storage101.dfw1.clouddrive.com/v1/MossoCloudFS_******/container/object
      HTTP/1.1 200 OK
      Content-Length: 400
      Accept-Ranges: bytes
      Last-Modified: Tue, 21 Apr 2015 12:06:23 GMT
      Etag: 81dc9bdb52d04dc20036dbd8313ed055
      X-Timestamp: 1429617982.70468
      X-Object-Meta-Foo: Bar
      Content-Type: text/html
      X-Trans-Id: txd337e4634c98475baf1a4-0055363d42dfw1
      Date: Tue, 21 Apr 2015 12:06:26 GMT
      

      要仅更新对象的标头,您可以执行 HTTP POST 请求。

      $ curl -i -XPOST -H'X-Auth-Token:******' \
      > -H'X-Object-Meta-Foo: Bar' \
      > -H'X-Object-Meta-Foo2: Bar2' \
      > https://storage101.dfw1.clouddrive.com/v1/MossoCloudFS_******/container/object
      HTTP/1.1 202 Accepted
      Content-Length: 76
      Content-Type: text/html; charset=UTF-8
      X-Trans-Id: txc262dfe86727440cbfcb1-0055363d5cdfw1
      Date: Tue, 21 Apr 2015 12:06:53 GMT
      
      <html><h1>Accepted</h1><p>The request is accepted for processing.</p></html>
      

      执行另一个 HEAD 请求将显示两个标头现在都存在。

      $ curl -I -XHEAD -H'X-Auth-Token:******' \
      > https://storage101.dfw1.clouddrive.com/v1/MossoCloudFS_******/container/object
      HTTP/1.1 200 OK
      Content-Length: 400
      Accept-Ranges: bytes
      Last-Modified: Tue, 21 Apr 2015 12:06:53 GMT
      Etag: 81dc9bdb52d04dc20036dbd8313ed055
      X-Timestamp: 1429618012.98354
      X-Object-Meta-Foo: Bar
      X-Object-Meta-Foo2: Bar2
      Content-Type: text/html
      X-Trans-Id: txdd9365b54e8f4d8c8451d-0055363d6adfw1
      Date: Tue, 21 Apr 2015 12:07:06 GMT
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-12-18
        • 2013-06-20
        • 2019-12-09
        • 1970-01-01
        • 2019-04-27
        • 1970-01-01
        相关资源
        最近更新 更多