ファイルバージョンのダウンロード

ガイドダウンロードファイルバージョンのダウンロード

ファイルバージョンのダウンロード

特定のファイルバージョンをダウンロードするには、取得するコンテンツが含まれるファイルのIDとそのファイルのバージョンIDをGET /files/:id/contentに渡します。

cURL
curl -X GET https://api.box.com/2.0/files/12345/content?version=4 \
     -H 'Authorization: Bearer <ACCESS_TOKEN>'
     -L
.NET
string fileId = "11111";
Stream versionContents = await client.FilesManager.DownloadStreamAsync(fileId, versionId: "22222");
Java
BoxFile file = new BoxFile(api, "id");
List<BoxFileVersion> versions = file.getVersions();
BoxFileVersion firstVersion = versions.get(0);

FileOutputStream stream = new FileOutputStream(firstVersion.getName());
firstVersion.download(stream);
stream.close();
Python
file_id = '11111'
file_version = client.file_version('12345')
version_content = client.file(file_id).content(file_version=file_version)
Node
client.files.getReadStream('123456', { version: '98765' }, callback);

ダウンロードURL

SDKを使用しない場合、このAPI呼び出しでは、HTTP 302 Foundステータスコードとともに、次のようなダウンロードURLへのリンクを含むlocationヘッダーが返されます。

https://dl.boxcloud.com/d/1/[long-random-string]/download

cURLで-Lフラグを使用することで、自動的にこのリダイレクトに従うことができます。

SDKでは、結果として、バイナリデータがダウンロードされます。APIでは、ダウンロードURLがlocationヘッダーを介して返されます。

また、SDKを介してダウンロードURLを取得することも可能です。

ダウンロードURLの有効期限

このダウンロードURLは、ファイルのダウンロードを許可するためにユーザーのブラウザに渡すことができますが、このURLが期限切れになると、その後でダウンロードするには再度リクエストする必要があります。

ファイルの準備ができていない

ファイルをダウンロードする準備がまだできていない場合は、クライアントがファイルをダウンロードできるようになるまでの秒数を示すretry-afterヘッダーが返されます。

この応答は、ダウンロードリクエストの直前にファイルがアップロードされた場合に発生することがあります。