将 powerapps 连接到第 3 方 RESORT

Connect powerapps to 3rd party RESRT

尝试将 powerapps 连接到第 3 方 REST 服务,此服务需要身份验证令牌。我可以使用 requests 和 python 轻松做到这一点,但有人想在 powerapps 中做到这一点。

我需要像这样将此令牌从 powerapps 传递到 REST 服务:

Python

headers = {"content-type": "application/json", "授权": "Xy454uu99blahblah"}
result_get = requests.get(url, headers=headers)

无论如何都要这样做?我对 powerapps 不是很了解?

Python

headers = {"content-type": "application/json", "授权": "Xy454uu99blahblah"}
result_get = requests.get(url, headers=headers)

您不能直接从 PowerApps 调用第 3 方 rest。您将需要使用 Flow 来 return 数据。

这是一个类似的已回答问题

希望对您有所帮助。

除了按照@ChrisMoncayo 的建议使用 Flow 之外,您还可以使用可以直接从 PowerApps 调用的 custom connector。链接资源包含有关为您的 API 创建自定义连接器的更多信息(如果您在创建连接器时遇到问题,请随时 post 提出新问题)。

以下是我过去使用自定义连接器和流程完成此类令牌身份验证的方式:

  1. 为您的 REST 端点(非令牌服务器)创建自定义连接器
  2. 使用 PowerApps 作为触发器创建一个新流程(名为 finalDataCall
  3. 创建 HTTP 操作以使用 GET 方法调用令牌服务器
  4. 添加解析 JSON 操作以单独获取令牌
  5. 在 Flow 中,将自定义连接器添加为操作。
    • 对于所有参数除了令牌,选择"Ask in PowerApps"。
    • 使用上面JSON解析出来的token,传入token参数
  6. 在 Flow 中添加响应操作以塑造响应
  7. 对于 PowerApps 中的 OnSelect 属性(假设用户按下按钮)使用:
ClearCollect(
    colFinalDataCall,
    finalDataCall.Run(
        queryParam1.Text,
        queryParam2.Text,
        queryParam3.Text,
        queryParam4.Text)
)

这会将 Flow 调用的响应收集到 PowerApps 中,以便您可以操作数据。

不适合胆小的人,但它对我来说已经运行了一年多了。

这是带图片的original forum post