簡體   English   中英

如何在 Power Apps 中輕松返回流中的 API 響應到我的 canvas 應用程序?

[英]How do I easily return and API response from my flow to my canvas app in Power Apps?

為了尋求幫助,我在調用 API 的強大應用程序中創建了一個流程和一個 canvas 應用程序,我終於讓它工作了,但似乎必須有一種更簡單的方法來做到這一點。

在我的流程中,我獲取正文並解析它以獲得我需要的內容,然后將該響應的正文返回給 canvas 應用程序。 我可以繞過該步驟,只返回 Api 調用步驟的主體,但我的主要問題是,當我單擊按鈕調用流程時,必須在我的 function 中編寫一些正則表達式似乎有點過分。

這會使用正確的字段為我創建集合,但是有沒有更簡單的方法讓應用程序無需手動定義它就可以了解我的架構?

在此處輸入圖像描述

在此處輸入圖像描述

使用新的Power Platform CLI 命令將自動從 REST API 創建 Power App。

在此處輸入圖像描述

在此處輸入圖像描述

如果您使用 Flow 的唯一原因是從 Power Apps 調用 API,那么是的,有一種更簡單的方法。 您可以創建自定義連接器並完全停止使用 Flow。

腳步:

  1. make.powerapps.com中,單擊Dataverse ,然后單擊Custom Connectors
  2. 單擊+ New custom connector
  3. 單擊Create from blank並將自定義連接器命名為
  4. 輸入host url(沒有https://
    • 保持base url/
    • 在此處輸入圖像描述
  5. 單擊Security -->
  6. Select 正確的安全類型
    • 您也可以 select 在此屏幕上No authentication並在Definition屏幕上使用請求 header
    • 在此處輸入圖像描述
  7. 單擊Definition -->
  8. 單擊New action然后命名SummaryDescriptionOperation ID
    • 在此處輸入圖像描述
  9. 在“ Request ”下單擊“ + Import from sample
  10. Select 方法( GET, POST, etc. ),輸入請求 URL 並單擊“ Import ”-您需要粘貼包含所有必需參數的示例 URL。
    -示例https://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson&latitude=48.814963&longitude=-122.71135&maxradiuskm=50&orderby=magnitude-asc
    • 在此處輸入圖像描述
    • 注意:如果需要,您可以在此處放置Authorization header
  11. Response下點擊Default然后Import from sample
    • 粘貼任何必需的標頭和預期的(通常是 JSON)響應
    • 我喜歡在這里使用Postman ...
    • 在此處輸入圖像描述
  12. 點擊Import
    • 在此處輸入圖像描述
    • Power Apps 解析 JSON 響應的方式非常好。 這些中的每一個都將返回到您的應用程序。 您可以編輯/刪除/等。
    • 在此處輸入圖像描述
  13. 此時,點擊Create connector
  14. 向下滾動並單擊Code preview -->
    • 除非你知道自己在做什么,否則不要亂搞
  15. 點擊Test -->
  16. 單擊+ New connection
    • 在此處輸入圖像描述
  17. 根據您為此自定義連接器設置安全性的方式,您將:
    • 使用您的 Windows 憑據登錄
    • 粘貼 API 密鑰
    • 或者只需單擊“創建”(如我使用免費 API 的示例)
      • 如果您在Request區域使用了 Auth header,這也適用
    • 在此處輸入圖像描述
  18. 創建此連接會將您“踢出”自定義連接器創建屏幕。 您必須單擊Custom Connectors select 您剛剛創建的那個,然后一直單擊到Test屏幕。
  19. 到達那里后,您應該會看到已建立連接。
    • 在此處輸入圖像描述
  20. 輸入所需參數,然后單擊Test operation
  21. 您應該看到狀態 200 和顯示的響應正文
    • 在此處輸入圖像描述
    • 至此,自定義連接器已基本完成。
  22. 返回您的 Canvas PowerApp,單擊Add data並找到您剛剛創建的自定義連接器
    • 在此處輸入圖像描述
  23. 添加一個Button控件並將其添加到OnSelect屬性:
ClearCollect(colName, 
    'CustomConnectorName'.OperationID(
        {
            required_param1: "text",
            required_param2: 1234,
            required_paramN: "whatever",
        }
    )
)

實際例子

ClearCollect(colEarthquakes, 
    '2022-11-27_SO_CustomConnector'.GETearthquakes(
        {
            format: "geojson",
            latitude: 48.814963,
            longitude: -122.71135,
            maxradiuskm: 50,
            orderby: "magnitude-asc"
        }
    )
)
  1. 單擊Button控件並調查自定義連接器返回的響應。 根據 JSON 的形狀,您可能需要通過在ClearCollect() function 中使用點符號來“爬入”嵌套的 JSON。

這會讓你接近。 如果你想要更多,看看這個視頻

注意:自定義連接器是一項高級功能。 該應用的所有用戶都需要 PowerApps 每用戶或每應用許可證。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM