将 DriveItem 移动到一个新的文件夹
若要将 DriveItem 移动到新的父项,应用程序会请求更新要移动的 DriveItem 的 parentReference。
这是更新方法的特殊用例。 你的应用程序可以将以下操作组合到单个请求中:将项目移动到新的容器和更新项目的其他属性。
无法使用这一请求在驱动器之间移动项目。
权限
调用此 API 需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限。
权限类型 | 权限(从最低特权到最高特权) |
---|---|
委派(工作或学校帐户) | Files.ReadWrite、Files.ReadWrite.All、Sites.ReadWrite.All |
委派(个人 Microsoft 帐户) | Files.ReadWrite、Files.ReadWrite.All |
应用程序 | Files.ReadWrite.All、Sites.ReadWrite.All |
HTTP 请求
PATCH /drives/{drive-id}/items/{item-id}
PATCH /groups/{group-id}/drive/{item-id}
PATCH /me/drive/items/{item-id}
PATCH /sites/{site-id}/drive/items/{item-id}
PATCH /users/{user-id}/drive/items/{item-id}
可选的请求标头
名称 | 类型 | 说明 |
---|---|---|
if-match | String | 如果包含此请求标头,且提供的 eTag(或 cTag)与文件夹上的当前 eTag 不匹配,则返回 412 Precondition Failed 响应。 |
请求正文
在请求正文中,提供 parentReference 属性的新值。 请求正文中不包括的现有属性将保留其以前的值,或根据对其他属性值的更改重新计算。 为了实现最佳性能,不得添加未变化的现有值。
注意:将项目移动到驱动器的根目录下时,应用程序不能使用 "id:" "root"
语法。
应用程序必须为父引用提供实际的根文件夹 ID。
响应
如果成功,此方法在响应正文中返回 200 OK
响应代码和更新的 DriveItem 资源。
示例
本示例将 {item-id} 指定的项目移动到用户驱动器中 ID 为 new-parent-folder-id
的文件夹中。
PATCH /me/drive/items/{item-id}
Content-type: application/json
{
"parentReference": {
"id": "{new-parent-folder-id}"
},
"name": "new-item-name.txt"
}
响应
以下示例显示了对此移动请求的响应。
HTTP/1.1 200 OK
Content-type: application/json
{
"id": "0123456789abc",
"name": "new-item-name.txt",
"parentReference":
{
"driveId": "11231001",
"path": "/drive/root:/Documents",
"id": "1231203102!1011"
}
}
错误响应
请参阅错误响应,详细了解错误返回方式。