1

次の OptionsBuilder オブジェクトを使用して、Google Cloud Storage のフォルダー内にオブジェクトを作成しました。

GSFileOptionsBuilder optionsBuilder = new GSFileOptionsBuilder()
  .setBucket("bucket")
  .setKey("folder/obj.csv")
  .setMimeType("text/csv");

次の構造を作る:

バケット >> フォルダ >> obj.csv

gsutil コマンドを実行して「bucket」と「obj.csv」の ACL を取得すると正常に動作しますが、「folder」に対して実行すると、GSResponseError: status=404, code=NoSuchKey, reason=Not Found という例外がスローされます。

私が実行する正確なコマンドは次のとおりです: gsutil getacl gs://bucket/folder/ > acl.txt

フォルダのアクセス許可を取得および設定するにはどうすればよいですか?

4

1 に答える 1

5

オブジェクトまたはバケットの ACL のみを取得できます。GCS には「フォルダ」というものがないため、フォルダの ACL を設定または取得することはできません。開発者ガイドの概念と用語のセクションを注意深く読むことをお勧めします。特に、オブジェクト名に関するセクション:

オブジェクト名

オブジェクト名は、Google Cloud Storage への単なるメタデータです。オブジェクト名には、長さが 1024 バイト未満の Unicode 文字 (UTF-8 エンコード) の任意の組み合わせを含めることができます。ファイル名に含める一般的な文字はスラッシュ (/) です。オブジェクト名にスラッシュを使用すると、オブジェクトが階層構造に格納されているように見せることができます。たとえば、あるオブジェクトに /europe/france/paris.jpg という名前を付け、別のオブジェクトに /europe/france/cannes.jpg という名前を付けることができます。これらのオブジェクトを一覧表示すると、場所に基づく階層ディレクトリ構造にあるように見えます。ただし、Google Cloud Storage はオブジェクトを、階層関係をまったく持たない独立したオブジェクトとして認識します。

于 2012-12-13T17:55:40.703 に答える