加えて、ファイルの
attributesをpartsとともに渡すことで、ファイルに情報を追加できます。詳細については、 APIを参照してください。計画済みパーツのコミット
には、partsリストに以下の両方を含める必要があります。
- アップロードしたパーツ。これには、それぞれののレスポンスを使用します。
- 計画のレスポンスに含まれる
hits。これには、各ヒットのpart_id、offset、sizeを使用します。
0からファイル末尾までを確認します。また、各計画済みパーツが計画リクエストで送られたサイズおよびSHA-512ハッシュと一致しているかどうかも確認します。
パーツのハッシュ
partsの各エントリには、sha1またはsha512のハッシュを含めることができます。sha512はすべてのエントリに含めるか、そうでなければどのエントリにも含めないようにします。一部のエントリにのみsha512が含まれている場合、APIはコードinvalid_parts_fieldの400 Bad Requestエラーを返します。
を使用して、サーバーにすでに存在するパーツをスキップした場合は、それらの各パーツも、他のパーツと同様にpartsに含めます。planレスポンス内のhitsから、part_id、offset、sizeの値を使用します。そのうえで、以下のようにします。
- 他のエントリに
sha512が含まれている場合は、planレスポンスからsha512の値を含めます。 - 他のエントリに
sha1が含まれている場合、またはハッシュが含まれていない場合は、これらのエントリにはハッシュを含めません。
ファイル全体に対する
digestヘッダーでサポートされるのは、SHA-1のみです。これは、SHA-512ダイジェストを使用してパーツをアップロードした場合も同様です。レスポンス
成功すると、APIはHTTP201 Createdステータスコードとオブジェクトを返します。
場合によっては、パーツの作成がまだ準備できておらず、代わりに202 Acceptedステータスコードが返されることがあります。この場合、アプリケーションはretry-afterヘッダーを確認し、指定された秒数後にコミットを再試行する必要があります。
