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>

エラー応答

エラーがどのように返されるかについては、「エラー応答」を参照してください。