在 Power Pages 中配置 Power Automate 云端流

Power Automate 云端流允许用户在不同的应用程序和服务之间创建自动化工作流。 可以使用 Power Automate 云端流来创建逻辑,以便在发生某个事件时执行一个或多个任务。 例如,配置按钮,以便当用户选择此按钮时,发送电子邮件或会议请求、更新记录、收集数据、同步文件和执行其他任务。

现在,您可以从 Power Pages 安全地调用 Power Automate 云端流,与 1000 多个外部数据源进行交互并将其集成到您的业务站点中。

备注

  • 您的 Power Pages 站点版本必须为 9.5.4.xx 或更高版本才能使用此功能。
  • 您的起始站点包版本必须为 9.3.2304.x 或更高版本。

先决条件

要与 Power Pages 集成,需要 Power Automate 许可证。 建议在 Power Automate 生产实例中使用进程 许可证。

集成云端流的步骤

  1. 创建云端流。

  2. 向站点添加流。

  3. 从您的网站调用流。

创建流

  1. 登录到 Power Pages

  2. 选择站点 + 编辑

  3. 导航至设置工作区,然后选择应用程序集成下的云端流

  4. 选择 + 创建新流

  5. 搜索 Power Pages,选择当 Power Pages 调用流时触发器。

    选择 Power Automate 中的选项 Power Pages 选项。

  6. 定义您的流步骤和返回值并选择保存

备注

只有解决方案感知流才能附加到 Power Pages 站点。

向您的网站添加流

创建即时云端流后,它需要与 Power Pages 站点相关联并使用 Web 角色进行保护。

  1. 登录到 Power Pages

  2. 选择站点 + 编辑

  3. 导航至设置工作区,然后在应用集成下面选择云端流(预览版)

  4. 选择 + 添加云端流

  5. 搜索最近创建的流。

  6. 角色下面选择 + 添加角色

  7. 选择应有权访问流的角色。

  8. 选择保存

    向网站添加云端流。

备注

当您将流添加到站点时,将生成一个唯一 URL,允许您从您的站点调用云。

从网页调用流

使用 Power Pages 云端流 API 与 Power Automate 交互以执行外部服务集成。 云端流 API 操作包含 HTTP 请求和响应。

Operation 方法 URI
调用云端流 POST [站点 URI]_/api/cloudflow/v1.0/trigger/<guid>

示例:

Request

POST https://contoso.powerappsportals.com/_api/cloudflow/v1.0/trigger/4d22a1a2-8a67-e681-9985-3f36acfb8ed4
{
    "Location":"Seattle"
}

Response

没有响应操作的云端流

HTTP/1.1 Accepted
Content-Type: application/json

有响应操作的云端流

HTTP/1.1 200 OK
Content-Type: application/json
Body
{
    "conditions":"Rain",
    "humidity":"93",
    "latitude":"47.60620880126953",
    "longitude":"-122.33206939697266"
}

对云端流 API 请求进行验证

您不需要包含身份验证代码,因为应用程序会话管理身份验证和授权。 所有 API 调用都必须包括跨网站请求伪造 (CSRF) 令牌。

将参数传递到云端流

在云端流中,您可以定义类型为 TextBooleanFileNumber 的输入参数。 您在请求正文中定义的参数名称应与云端流触发器中定义的参数名称匹配。

重要提示

  • 您必须传递云端流中定义的请求参数名称。
  • 不支持向配置了安全输入的流传递参数。

调用流的示例 JavaScript

此示例演示如何使用异步 JavaScript 和 XML (AJAX) 调用流。

    shell.ajaxSafePost({
        type: "POST",
        url: "/_api/cloudflow/v1.0/trigger/44a4b2f2-0d1a-4820-bf93-9376278d49c4",
        data: {"eventData":JSON.stringify({"Email": "abc@contoso.com", "File":{"name":"Report.pdf", "contentBytes":"base 64 encoded string"} })}
    })
    .done(function (response) {
    
    })
    .fail(function(){
    
    });

备注