技術情報

技術情報

OpenStack: Swift 【API 編】

2013年6月20日

技術文書トップへ

第 4 章 オブジェクトストレージ操作

3. オブジェクトサービス

3-4. オブジェクトの削除

オブジェクトを指定してDELETEリクエストを送信することで、そのオブジェクトを削除することができます。

【リクエスト】

【レスポンス】

【実行例】

削除対象のオブジェクト "tmp/swift-1.3.0.taz" を指定して、DELETEリクエストを送ります。

  • DELETEリクエスト
    DELETE /v1/AUTH_orion-cabinet/tmp/swift-1.3.0.taz HTTP/1.1
    User-Agent: curl/7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.18
    Host: objstore.example.jp
    Accept: */*
    X-Auth-Token: AUTH_tk3b0094c49a90435b9f86f580cb39e363
    
  • レスポンス
    HTTP/1.1 204 No Content
    Content-Length: 0
    Content-Type: text/html; charset=UTF-8
    Date: Fri, 08 Jul 2011 04:11:12 GMT
    

ページトップ

3-5. オブジェクトメタデータの更新

オブジェクトのメタデータを更新します。メタデータは X-Object-Meta- から始まる名前の拡張ヘッダで指定します。オブジェクトが持っているメタデータが全て削除されたのち、新しいメタデータが登録されます。また、オブジェクトに設定したメタデータは、HEAD リクエストまたは GET リクエストで読み出すことができます。
ちなみに、メディアタイプや Etag などの情報を更新することはできません。

オブジェクトへのメタデータ設定に関しては、「第7章 メタデータ」で解説します。

【リクエスト】

【レスポンス】

【実行例】

メタデータを登録したいオブジェクト "/tmp/swift-1.3.0.taz" を指定して、POST メソッドを送ります。ユーザが定義した X-Object-Meta-Project ヘッダに、"openstack object storage" を設定しています。

  • POSTリクエスト
    POST /v1/AUTH_orion-cabinet/tmp/swift-1.3.0.taz HTTP/1.1
    User-Agent: curl/7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.18
    Host: objstore.example.jp
    Accept: */*
    X-Auth-Token: AUTH_tk3b0094c49a90435b9f86f580cb39e363
    X-Object-Meta-Project: openstack object storage
    
  • レスポンス
    HTTP/1.1 202 Accepted
    Content-Length: 159
    Content-Type: text/html; charset=UTF-8
    Date: Fri, 08 Jul 2011 04:34:53 GMT
    
    <html>
     <head>
      <title>202 Accepted</title>
     </head>
     <body>
      <h1>202 Accepted</h1>
      The request is accepted for processing.<br /><br />
    
     </body>
    </html>
    

ページトップ

3-6. オブジェクトメタデータの取得

オブジェクトのサイズやメディアタイプ、最終更新時刻などの標準ヘッダ情報とオブジェクトに付けられたメタデータを取得します。オブジェクトへのメタデータ設定に関しては、「第7章 メタ データ」で解説します。

【リクエスト】

【レスポンス】

【実行例】

オブジェクト "tmp/swift-1.3.0.taz" を指定して HEAD リクエストを送り、メタデータを取得します。
エンティティタグ (Etag) と、ユーザが設定したメタデータ (X-Object-Meta-Project) が読み出せます。

  • HEADリクエスト
    HEAD /v1/AUTH_orion-cabinet/tmp/swift-1.3.0.taz HTTP/1.1
    User-Agent: curl/7.21.0 (x86_64-pc-linux-gnu) libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.18
    Host: objstore.example.jp
    Accept: */*
    X-Auth-Token: AUTH_tk3b0094c49a90435b9f86f580cb39e363
    
  • レスポンス
    HTTP/1.1 200 OK
    Last-Modified: Fri, 08 Jul 2011 04:30:30 GMT
    X-Object-Meta-Project: openstack object storage
    Etag: 97e0b18bb44fbd8b2ea38b06e166a0fd
    Content-Length: 397030
    Content-Type: application/x-tar
    Date: Fri, 08 Jul 2011 04:40:50 GMT
    
ページトップ