忘れないように記録しとこ

カバの樹

[PHP]Conohaのオブジェクトストレージ上のコンテナを削除する

2018年11月30日

はじめに

今回はConohaのオブジェクトストレージのコンテナを削除します。

コンテナ上にオブジェクトが存在していると、コンテナを削除できません。
もしオブジェクトが存在しているなら下記記事を参考に削除してください。

 

https://www.kabanoki.net/2502

 

 

コンテナを削除

// テナントID
define('TENANT_ID', 'f520ae801e5d45668f22eae38838b3c4');
// 認証トークン(token-get.phpで取得する)
// トークンの取得方法は「ConohaのオブジェクトストレージをREST APIで操作する part1 (基本設定+トークン発行)」https://www.kabanoki.net/1326 を参考
define('AUTH_TOKEN', 'b7bb30ec14264a4ba0e27e5d5e1d26af');
// オブジェクトストレージエンドポイントURL
define('ENDPOINT_URL', 'https://object-storage.tyo1.conoha.io/v1/nc_' . TENANT_ID);
//コンテナ名
define('MAIN_CONTENAR', 'public');

// cURLの初期化
$curl = curl_init();
// HTTPヘッダー
$headers = array(
   'X-Auth-Token: ' . AUTH_TOKEN,
   'Content-Length: 0',
   'Accept: application/json'
);

// リクエストURL
// /(スラッシュ)区切りの最後のフィールドがコンテナ名になる
$url = ENDPOINT_URL . '/' .MAIN_CONTENAR;
// cURLのオプション
$options = array(
   CURLOPT_CUSTOMREQUEST => 'DELETE',

   // URLの設定
   CURLOPT_URL => $url,
   // リクエスト/レスポンスが見やすいように冗長表示する
   CURLOPT_VERBOSE => true,

   CURLOPT_RETURNTRANSFER => true,
   CURLOPT_HTTPHEADER => $headers,
);
curl_setopt_array($curl, $options);
// HTTPリクエストを実行
// レスポンスには何も含まれていません。
$body = curl_exec($curl);
if(curl_errno($curl)) {
   $msg = sprintf('cURL error: %s', curl_error($curl));
   throw new RuntimeException($msg);
}

$status_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
echo "status code: " . $status_code . "\n";
  • B!