アプリ フォルダーを使用すると、すべてのファイルへのアクセス権がなくてもユーザー コンテンツを格納できます。
アプリ フォルダーは、アプリ専用の特殊フォルダーです。
アプリ フォルダーは、通常、アプリに基づいた名前が付けられて、ユーザーの OneDrive の Apps フォルダー内に配置されます。
Files.ReadWrite.AppFolder
アクセス許可スコープ要求して、その要求をユーザーが承認すると、アプリには、このフォルダーに対する読み取り/書き込みアクセス権が付与されます。
ユーザーの OneDrive 内の他のフォルダーと動作が同じため、ユーザーは追加、変更、およびコンテンツの削除を実行できます。 アプリでは、ユーザーに固有のロジックを維持して、ユーザーが名前の変更や削除できるようにする必要はありません。
ユーザーからの承認を得る
アプリ用のフォルダーを独自に設定するには、アクセス トークンを取得するときに Files.ReadWrite.AppFolder
または Files.ReadWrite
のアクセス許可スコープを要求する必要があります。
詳細については、「認証」を参照してください。
アプリのフォルダーを作成する
OneDrive は、アプリが特殊フォルダー名前空間を使用して初めてフォルダーを呼び出したときに、ユーザーの OneDrive のルートにある Apps
フォルダー内にアプリのフォルダーを作成します。
アプリが初回にフォルダーを作成できる最も一般的な呼び出しを次に示します。
- アプリ フォルダーのメタデータを取得する:
GET /drive/special/approot
- アプリ フォルダーの子を一覧する:
GET /drive/special/approot/children
- approot の下にフォルダーを作成する:
POST /drive/special/approot/children
- アップロード セッションを作成する:
POST /drive/special/approot:/{filename}:/createUploadSession
- アイテムのコンテンツをアップロードする:
PUT /drive/special/approot:/{fileName}:/content
- アイテムのコンテンツとメタデータをアップロードする:
POST /drive/special/approot/children
- URL からアイテムのコンテンツをアップロードする:
POST /drive/special/approot/children
アプリのフォルダーに名前を付ける
OneDrive がアプリのフォルダーを作成するときには、アプリ ID の呼び出し時点でのアプリケーション名を使用します。アプリのフォルダー名は、Azure の [アプリの登録] ページで変更できます。 そうする場合は、Azure の [アプリの登録] ページに移動して、アプリのローカライズ設定を編集することで、アプリのフォルダー名をローカライズできます。 [Azure アプリ登録] ページでアプリのフォルダー名を変更した場合、アプリに関連付けられている既存の特別なフォルダーの名前は変更されません。
アプリのフォルダーを操作する
アプリのフォルダーは、すべての標準 item
操作をサポートしています。
共通タスク | HTTP メソッド (パス別) |
---|---|
アイテムのメタデータを取得する | GET /drive/special/approot:/{path} |
アイテムの子を一覧する | GET /drive/special/approot:/{path}:/children |
アイテムを作成する | PUT /drive/special/approot:/{parent-path}/{name} |
アイテムのコンテンツをアップロードする | PUT /drive/special/approot:/{parent-path}/{name}:/content |
アイテムのコンテンツを更新する | PATCH /drive/special/approot:/{path} |
アイテムを削除する | DELETE /drive/special/approot:/{path} |
アイテムを移動する | PATCH /drive/special/approot:/{path} |
アイテムをコピーする | POST /drive/special/approot:/{path}:/action.copy |
アイテムのコンテンツをダウンロードする | GET /drive/special/approot:/{path}:/content |
特定のファイル形式をダウンロードする | GET /drive/special/approot:/{path}:/content?format={format} |
アイテムを検索する | GET /drive/special/approot:/{path}:/search |
アイテムに対する変更を表示する | GET /drive/special/approot:/{path}:/delta |
アイテムのサムネイルを取得する | GET /drive/special/approot:/{path}:/thumbnails |