首页 > 解决方案 > graph API sharepoint 复制 DriveItem

问题描述

我无法在任何地方找到类似的帖子。有没有人从图形 API 成功使用这个 HTTP 请求。 POST /sites/{siteId}/drive/items/{itemId}/copy

我正在使用 Power Automate/Flow 尝试将一个 SharePoint 文件夹的内容复制到另一个文件夹,并且从我正在读取的任何文件夹或文件中都有一个 itemID,但所有可用的查找包括内置的 SharePoint 和其他 Graph API GET 请求都返回一个看起来像 ID 的文件路径(例如“/Shared+Documents”)。当我使用这个 ID 时,我得到一个“不是无效的”

"message": The expression \"sites('tenant.sharepoint.com,41042aef-6014-4861-9bfb-80243b97850e,6dd019c6-141e-49d1-ab00-7424eb5730b2')/drive/items/Shared+Documents/copy\" is not valid."

当我使用下面这样的垃圾 guid 执行相同的请求时,我收到错误消息"The resource could not be found",告诉我我的请求有效并且满足 API 调用要求,但根本不存在 https://graph.microsoft.com/v1 .0/sites/tenant.sharepoint.com,41042aef-6014-4861-9bfb-80243b97850e,6dd019c6-141e-49d1-ab00-7424eb5730b2/drive/items/c98f100b-de82-441b-8ec6-400b448ec696/copy

"message": "The resource could not be found."

谁能告诉我如何获取满足此要求的 itemID 以便我可以使用此 API 调用?或突出显示我可能出错的地方。

标签: filesharepointgraphdirectorycopy

解决方案


@克里斯,

下面是复制端点

POST /drives/{driveId}/items/{itemId}/copy

在端点中,它需要目标项目的 itemid。Itemid 是项目的唯一 guid。

如何获取项目 ID?例如我们只知道文件夹的路径:

在此处输入图像描述

我们可以通过以下端点获取它的 id:

/drive/root:/{item-path}

在此处输入图像描述

BR


推荐阅读