driveItemVersion リソースのコンテンツをダウンロードする

名前空間: microsoft.graph

重要

Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。

driveItem の特定のバージョンのコンテンツを取得します。

メモ: 現在のバージョンのコンテンツの取得はサポートされていません。 代わりに、 driveItem コンテンツ エンドポイントを使用します。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国
✅ ✅ ✅ ✅

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。

アクセス許可の種類 最小特権アクセス許可 より高い特権のアクセス許可
委任 (職場または学校のアカウント) Files.Read Files.Read.All, Files.ReadWrite, Files.ReadWrite.All、Sites.Read.All、Sites.ReadWrite.All
委任 (個人用 Microsoft アカウント) Files.Read Files.Read.All, Files.ReadWrite, Files.ReadWrite.All
アプリケーション Files.Read.All Files.ReadWrite.All、Sites.Read.All、Sites.ReadWrite.All

注:

SharePoint Embedded では、コンテナーのコンテンツにアクセスするための FileStorageContainer.Selected アクセス許可が必要です。 このアクセス許可は、前述のアクセス許可とは異なります。 Microsoft Graph のアクセス許可に加えて、アプリにはこの API を呼び出すために必要な コンテナーの種類のアクセス許可 が必要です。 詳細については、「 SharePoint Embedded の認証と承認」を参照してください。

HTTP 要求

GET /drives/{drive-id}/items/{item-id}/versions/{version-id}/content
GET /groups/{group-id}/drive/items/{item-id}/versions/{version-id}/content
GET /me/drive/items/{item-id}/versions/{version-id}/content
GET /sites/{site-id}/drive/items/{item-id}/versions/{version-id}/content
GET /users/{user-id}/drive/items/{item-id}/versions/{version-id}/content

応答

ファイルのバイトについて、事前に認証されたダウンロード URL にリダイレクトする 302 Found 応答を返します。

ファイルの内容をダウンロードするには、アプリケーションが応答の Location ヘッダーに従う必要があります。 多くの HTTP クライアント ライブラリは、自動的に 302 リダイレクションに従い、即座にファイルのダウンロードを開始します。

事前認証されたダウンロード URL は短時間 (数分) のみ有効であり、ダウンロードに Authorization ヘッダーは必要ありません。

例

例 1:ファイルの以前のバージョンのコンテンツをダウンロードする

この例では、現在のユーザーのドライブ内のファイルのバージョンを取得します。

要求

GET /me/drive/items/{item-id}/versions/{version-id}/content

応答

バージョンのコンテンツをダウンロードできる場所へのリダイレクトを返します。

HTTP/1.1 302 Redirect
Location: https://onedrive.com/34FF49D6...

例 2:ファイルの以前のバージョンからバイトの範囲の一部をダウンロードする

driveItemVersion からバイトの範囲の一部をダウンロードするには、RFC 2616 で指定されているように Range ヘッダーを使用できます。 リダイレクトの後に続くときは、/content の要求ではなく、Range ヘッダーを追加する必要があります。

GET https://onedrive.com/34FF49D6...
Range: bytes=0-1023

この呼び出しは、要求範囲 (バイト単位) を持つ HTTP 206 Partial Content 応答をファイルから返します。 範囲を生成できない場合、 Range ヘッダーは無視される可能性があり、ファイルの全内容を含む HTTP 200 応答が返されます。

HTTP/1.1 206 Partial Content
Content-Range: bytes 0-1023/2048

<first 1024 bytes of file>

注釈

OneDrive では、ファイルの以前のバージョンの完全なメタデータは保持されません。

アプリがファイルで利用可能なバージョンのリストを取得すると、特定のバージョンに関して利用可能な情報を提供する driveItemVersion リソースが返されます。