ファイル・パートのアップロード
/essbase/rest/v1/files/upload-part/{path}
マルチパート・ファイル・アップロードでファイルのパートをアップロードします。マルチパート・ファイル・アップロードをすでに開始している必要があります。アップロード・パス、パート番号(整数)、およびマルチパート・ファイル・アップロードの作成操作から返された一意のアップロードIDを指定します。
ノート: オブジェクトの複数のパートが同じアップロードIDおよびパート番号を使用してアップロードされた場合は、最新のアップロードによって以前のアップロードが上書きされます。
リクエスト
- application/octet-stream
- path(required): string
パターン:
.+
ファイルのアップロード先にするフォルダのカタログ・パス。
- partNum(required): integer(int32)
ファイルの部分アップロードのパート番号。
- uploadId(required): string
ファイルの部分アップロード開始のアップロードID。
レスポンス
- application/json
- application/xml
200 レスポンス
OK
一意のETag (エンティティ・タグ)を返します。アップロードをコミットするときの各パートのパート番号と対応するETag値の両方。
400 レスポンス
不正なリクエスト
パートのアップロード中に問題が発生すると、エラーが返され、すべてのパートがクリーンになります。
500 レスポンス
サーバーの内部エラーです。
例
次の例では、マルチパート・ファイル・アップロード内のファイルのパートをEssbaseファイル・カタログにアップロードする方法を示します。この例では、2つのパートをアップロードします。入力として、パス・パラメータに宛先のカタログ・パスが必要です。問合せパラメータには、パート番号とアップロードIDが必要です。レスポンスとして、Essbaseは各パートのetagを返します。アップロードをコミットするときに、対応するパート番号とともにetagを渡す必要があります。
この操作は、マルチパート・ファイル・アップロード・プロセスの2番目のステップです。操作のフローは、次のとおりです。
-
マルチパート・ファイル・アップロードの作成
-
ファイルのパートのアップロード(この例のとおり)
-
マルチパート・ファイル・アップロードのコミット(この例のとおり)
初期化ステップ後の任意の時点で、「マルチパート・ファイル・アップロードの中止」を使用してプロセスを終了できます。
この例では、cURLを使用して、Windowsシェル・スクリプトからREST APIにアクセスします。呼出し元ユーザーのIDおよびパスワードは変数であり、properties.bat
内でその変数値が設定されています。
cURLコマンドを含むスクリプト
call properties.bat
curl -X PUT "https://myserver.example.com:9001/essbase/rest/v1/files/upload-part/users/admin/datafile.txt?partNum=1&uploadId=8399f4a4-6e8f-42d7-b454-b7c0ef8f56f6" -H "Accept:application/json" -H "Content-Type:application/octet-stream" -u %User%:%Password%
curl -X PUT "https://myserver.example.com:9001/essbase/rest/v1/files/upload-part/users/admin/datafile.txt?partNum=2&uploadId=8399f4a4-6e8f-42d7-b454-b7c0ef8f56f6" -H "Accept:application/json" -H "Content-Type:application/octet-stream" -u %User%:%Password%
レスポンス本体の例
レスポンス1
{
"partNum" : 1,
"response" : {
"etag" : "c7bb3d4f4589824cea53d27fabfc044"
}
}
レスポンス2
{
"partNum" : 2,
"response" : {
"etag" : "fa5873784f4df9e5e623e8b716bf2ac7"
}
}