DriveItem のコンテンツをダウンロードする
DriveItem のプライマリ ストリーム (ファイル) のコンテンツをダウンロードします。 file プロパティを持つ driveItem のみがダウンロード可能です。
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。 アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。
アクセス許可の種類 | アクセス許可 (特権の小さいものから大きいものへ) |
---|---|
委任 (職場または学校のアカウント) | Files.Read、Files.ReadWrite、Files.Read.All、Files.ReadWrite.All、Sites.Read.All、Sites.ReadWrite.All |
委任 (個人用 Microsoft アカウント) | Files.Read、Files.ReadWrite、Files.Read.All、Files.ReadWrite.All |
アプリケーション | Files.Read.All、Files.ReadWrite.All、Sites.Read.All、Sites.ReadWrite.All |
HTTP 要求
GET /drives/{drive-id}/items/{item-id}/content
GET /groups/{group-id}/drive/items/{item-id}/content
GET /me/drive/root:/{item-path}:/content
GET /me/drive/items/{item-id}/content
GET /sites/{siteId}/drive/items/{item-id}/content
GET /users/{userId}/drive/items/{item-id}/content
オプションの要求ヘッダー
名前 | 値 | 説明 |
---|---|---|
if-none-match | String | この要求ヘッダーが含まれている場合、指定された eTag (または cTag) がファイルの現在のタグに一致すると、HTTP 304 Not Modified 応答が返されます。 |
例
完全なファイルをダウンロードする例を示します。
GET /me/drive/items/{item-id}/content
応答
ファイルの事前認証されたダウンロード URL にリダイレクトする、302 Found
応答を返します。
これは、DriveItem の @microsoft.graph.downloadUrl
プロパティを通じて使用可能な URL と同じものです。
ファイルのコンテンツをダウンロードするには、アプリケーションで応答の Location
ヘッダーに従う必要があります。
多くの HTTP クライアント ライブラリは、自動的に 302 リダイレクションに従い、即座にファイルのダウンロードを開始します。
事前認証されたダウンロード URL は、短期間 (数分) のみ有効で、ダウンロードのために Authorization
ヘッダーを必要としません。
HTTP/1.1 302 Found
Location: https://b0mpua-by3301.files.1drv.com/y23vmagahszhxzlcvhasdhasghasodfi
部分的な範囲のダウンロード
ファイルから部分的なバイト範囲をダウンロードするには、RFC 2616 で指定されているヘッダーをRange
使用できます。
ヘッダーは、 のRange
要求/content
ではなく、実際@microsoft.graph.downloadUrl
の URL に追加する必要があることに注意してください。
GET https://b0mpua-by3301.files.1drv.com/y23vmag
Range: bytes=0-1023
これにより、ファイルからのバイトの要求範囲を含む HTTP 206 Partial Content
応答が返されます。
範囲が生成できない場合、Range ヘッダーは無視され、ファイルの完全なコンテンツを含む HTTP 200
応答が返されます。
HTTP/1.1 206 Partial Content
Content-Range: bytes 0-1023/2048
Content-Type: application/octet-stream
<first 1024 bytes of file>
エラー応答
エラーがどのように返されるかについては、「エラー応答」を参照してください。