0

Knox S3 ライブラリを見ています。私の Web アプリでは、ユーザーはファイルをアップロードできます。Amazon S3 の使用を考えています。

Knoxでは、アップロードされたファイルをユーザーにマップする方法は? ユーザーがアップロードしたファイルを知りたいとしましょう。これは MongoDB に保存されます。

ただのアイデア。

4

1 に答える 1

2

特定のユーザーがアップロードしたデータを特定するには、次の 2 つのオプションがあります。

  1. 外部データ ストア (MongoDB またはその他のデータベース) を使用して、S3 にアップロードされたオブジェクト (キー) とユーザーの間の関係を記録します。このデータ記録は、新しいオブジェクトが S3 にアップロードされるときに、アプリのロジックによって行われます。

  2. 共通のプレフィックスで S3 にデータをアップロードし (たとえば、ユーザーがアップロードしたすべてのファイルは に配置されます/<user-id>/file.ext) 、バケットでLISTリクエストを実行して、そのプレフィックスですべてのキーを見つけます。

通常、特に S3 オブジェクトと他のエンティティ間の複数の関係を記録する必要がある場合は、最初のオプションが最適です。

これらのシナリオは、Knox を S3 クライアントとして使用することに固有のものではありません。これらは、プログラミング言語または S3 ライブラリとは無関係に適用されます。

于 2013-09-04T07:00:55.937 に答える