Box Developerドキュメントの新しいベータ版サイトがまもなくリリースされる予定です。最新の開発者向けガイド、APIリファレンス、AI搭載の検索により、Boxを使用した迅速な開発をサポートします。更新情報については今しばらくお待ちください。
アップロードセッションでファイルのチャンクをアップロードします。
実際のエンドポイントURLはCreate upload sessionおよびGet upload sessionエンドポイントが返します。
bytes 8388608-16777215/445856194チャンクのバイト範囲。
このセッションですでにアップロードされたパーツの範囲と重複しないようにしてください。各パーツのサイズは、作成したアップロードセッションで指定されているパーツサイズとまったく同じサイズである必要があります。ただし、ファイルの最後のパーツは小さくなる可能性があるため、例外となります。
content-rangeの値を指定する際は、以下の点に注意してください。
sha=fpRyg5eVQletdZqEKaFlqwBXJzM=分割アップロードのRFC3230メッセージのダイジェスト。
サポートされているのはSHA1のみです。SHA1ダイジェストはbase64でエンコードされている必要があります。このヘッダーの形式は、sha=BASE64_ENCODED_DIGESTです。
SHAダイジェストの値を取得するには、openSSLコマンドを使用して、ファイルのパーツをエンコードします: openssl sha1 -binary <FILE_PART_NAME> | base64。
D5E3F7AアップロードセッションのID。
ファイルのバイナリコンテンツ。
curl -i -X PUT "https://upload.box.com/2.0/files/upload_sessions/F971964745A5CD0C001BBE4E58196BFD" \
-H "authorization: Bearer <ACCESS_TOKEN>" \
-H "digest: sha=fpRyg5eVQletdZqEKaFlqwBXJzM=" \
-H "content-range: bytes 8388608-16777215/445856194" \
-H "content-type: application/octet-stream" \
--data-binary @<FILE_NAME>await client.chunkedUploads.uploadFilePart(
acc.uploadSessionId,
generateByteStreamFromBuffer(chunkBuffer),
{
digest: digest,
contentRange: contentRange,
} satisfies UploadFilePartHeadersInput,
);client.chunked_uploads.upload_file_part(
acc.upload_session_id,
generate_byte_stream_from_buffer(chunk_buffer),
digest,
content_range,
)await client.ChunkedUploads.UploadFilePartAsync(uploadSessionId: acc.UploadSessionId, requestBody: Utils.GenerateByteStreamFromBuffer(buffer: chunkBuffer), headers: new UploadFilePartHeaders(digest: digest, contentRange: contentRange));try await client.chunkedUploads.uploadFilePart(uploadSessionId: acc.uploadSessionId, requestBody: Utils.generateByteStreamFromBuffer(buffer: chunkBuffer), headers: UploadFilePartHeaders(digest: digest, contentRange: contentRange))client.getChunkedUploads().uploadFilePart(acc.getUploadSessionId(), generateByteStreamFromBuffer(chunkBuffer), new UploadFilePartHeaders(digest, contentRange))await client.ChunkedUploads.UploadFilePartAsync(uploadSessionId: acc.UploadSessionId, requestBody: Utils.GenerateByteStreamFromBuffer(buffer: chunkBuffer), headers: new UploadFilePartHeaders(digest: digest, contentRange: contentRange));await client.chunkedUploads.uploadFilePart(
acc.uploadSessionId,
generateByteStreamFromBuffer(chunkBuffer),
{
digest: digest,
contentRange: contentRange,
} satisfies UploadFilePartHeadersInput,
);{
"part": {
"offset": 16777216,
"part_id": "6F2D3486",
"sha1": "134b65991ed521fcfe4724b7d814ab8ded5185dc",
"size": 3222784
}
}