URL から OneDrive にファイルをアップロードする (プレビュー)
アプリでは、URL を指定することで OneDrive にアイテムをアップロードできます。 OneDrive は、リモート サーバーからファイルを直接ダウンロードするため、アプリではファイルのバイトをアップロードする必要がなくなります これは、ファイルのコンテンツが利用できない、または転送にかかる負担が大きくなる、モバイル クライアントやブラウザー アドインで特に役立ちます。
大きなファイルをアップロードする場合は、「アップロード セッションを使ってサイズの大きなファイルをアップロードする」を参照してください。
注: URL からのアイテムのアップロードは OneDrive 個人用に対してのみ可能です。
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。 アクセス許可の選択方法などの詳細については、「アクセス許可」を参照してください。
アクセス許可の種類 | アクセス許可 (特権の小さいものから大きいものへ) |
---|---|
委任 (職場または学校のアカウント) | 該当なし |
委任 (個人用 Microsoft アカウント) | Files.ReadWrite、Files.ReadWrite.All |
アプリケーション | 該当なし |
HTTP 要求
POST /me/drive/items/{parent-item}/children
要求ヘッダー
名前 | 型 | 説明 |
---|---|---|
Prefer | string | respond-async に設定すると、非同期のアイテム転送が有効になります。 それ以外の場合は、要求は中断されます。 |
要求本文
要求本文のコンテンツは、リモート URL から作成するアイテムの JSON 表記にする必要があります。 サービスはリモート URL からファイルをダウンロードするときに、ユーザーとして認証しないため、URL はパブリックにアクセスできる必要があります。
応答
このメソッドは要求の受け入れ時に、ダウンロードの進行状況を監視する方法についての詳細を返します。
HTTP/1.1 202 Accepted
Location: https://api.onedrive.com/monitor/4A3407B5-88FC-4504-8B21-0AABD3412717
例
POST /drive/items/{parent-item}/children
Content-Type: application/json
Prefer: respond-async
{
"@microsoft.graph.sourceUrl": "http://wscont2.apps.microsoft.com/winstore/1x/e33e38d9-d138-42a1-b252-27da1924ca87/Screenshot.225037.100000.jpg",
"name": "halo-screenshot.jpg",
"file": { }
}
応答
サービスは、要求の受け入れ直後に応答を返し、コピーの進行状況を監視する方法についての詳細を提供します。
HTTP/1.1 202 Accepted
Location: https://api.onedrive.com/monitor/4A3407B5-88FC-4504-8B21-0AABD3412717
Location
ヘッダーの値には、現在の操作の状態を取得するために使用できる URL が提示され、アップロードが完了する時期を判断できます。
備考
OneDrive for Business、SharePoint Online および SharePoint Server 2016 への URL を使用したアイテムのアップロードはサポートされていません。