在 Power Automate 中使用 SharePoint 发送 HTTP 请求流操作

在 Power Automate 中,SharePoint 发送 HTTP 请求流操作允许你构造和执行 SharePoint REST API 查询。 如果现有 SharePoint 流操作无法处理您的要求,或者要查找的操作在 SharePoint 连接器中尚不可用,则此操作特别有用。

将 HTTP 请求发送到 SharePoint 操作

若要有效地使用 SharePoint 发送 HTTP 请求操作,请参阅以下提示。

注意

这是一个以开发人员为中心的操作。 您必须了解 SharePoint REST API 的工作原理以及如何在 Power Automate 中分析 JSON 字符串。

此外,此操作仅支持 SharePoint REST API (排除任何已弃用的 API) ,如果需要访问其他Microsoft服务,则需要利用“HTTP with Microsoft Entra ID”连接器。

了解 SharePoint REST/OData API

SharePoint 具有许多 API。 此处的重点是 REST/OData API。 有关完整的 REST/OData API 集,请参阅 了解 SharePoint REST 服务

尽管在某些情况下,您可以使用 SharePoint 2010 REST API (_vti_bin/listdata.svc) ,但建议改用 REST/OData API。

使用 JSON light

SharePoint REST/OData API 支持 JSON 精简。 这意味着您可以在 API 请求中设置标头,通知 SharePoint 是否在响应中包含任何元数据。 在许多情况下,不需要元数据。 通过元数据可以更轻松地分析操作的输出。

为此,只需添加以下标头:

Accept: application/json; odata=nometadata

分析响应

如果执行 GET 请求,通常希望分析响应。 默认响应为 JSON,使执行更简单。

通过查询操作的正文来分析响应,然后根据响应分析 JSON 数组或对象。

为此,请生成表达式:

body('Send_an_HTTP_request_to_SharePoint' )['Id']

如果具有数组,则具有 JSON 数组对象。 可以使用前面的表达式,然后构造对每个操作的 apply,并使用以下表达式输入要使用的变量:

body('Send_an_HTTP_request_to_SharePoint' )['value']

在 apply to each 操作中,可以使用以下表达式访问各个元素:

items('Apply_to_each')['Title']