【问题标题】:Query (HTTP GET) data in Power Apps Portal from Web API with JavaScript使用 JavaScript 从 Web API 查询 Power Apps 门户中的 (HTTP GET) 数据
【发布时间】:2021-12-12 07:05:07
【问题描述】:

我有一个“入门门户”Power App 门户。我想利用 JavaScript 和 Web API 来查询数据。 Documentation 状态

您可以使用 Web API 从您的门户页面对所有 Microsoft Dataverse 表执行创建、更新和删除操作。

进一步的documentation 仅列出了 CREATE、UPDATE、DELETE 操作,并且此 API 可访问为

[Portal URI]/_api

我发现了如何使用辅助方法成功地进行身份验证以获取标头的令牌:

shell.getTokenDeferred().done(function (token) { ...}

这允许在用户登录门户时进行身份验证,因此我相信所有相关的表权限等都已应用。

但是,我想检索数据(HTTP GET)。我知道这是possible from the Dataverse Web API.。这个api暴露为

[Organization URI]/api/data/v9.1/

这些 API 真的是同一个 API,只是为门户提供了不同的方式吗?是否可以像之前的操作一样使用 GET 端点或第二个 API,作为 Portal Contact 用户进行身份验证?

【问题讨论】:

    标签: microsoft-dynamics powerapps dynamics-365 dataverse powerapps-portal


    【解决方案1】:

    API 相同,但权限不同,您需要在 _api 端点内启用要访问的表。

    您可以在此页面阅读更多信息:https://docs.microsoft.com/en-us/powerapps/maker/portals/read-operations,还有一个 XrmToolBox 工具可以帮助您进行此操作(但我没有尝试过)https://www.xrmtoolbox.com/plugins/PowerPortalWebAPIHelper/

    关于 Web API 调用,我发布了一个新工具来创建它们(类似于 CRM REST Builder)我还添加了一个“门户”语法(预览中),但生成的 url 是相同的。链接:https://github.com/GuidoPreite/DRB

    【讨论】:

    • 好的,读操作文档是难题的一半!我可以在门户之外以门户用户的身份查询 Dataverse WEB API 吗?假设我想编写自己的门户应用程序?我们可以将授权设置为云身份提供商 - 例如 Azure AD B2C。
    • 不知道以门户网站外的门户用户身份运行 Dataverse Web API 的方式。但是,如果您在门户之外,您可以使用标准 Web API 端点,唯一的事情是您需要实现安全模型来复制门户用户(例如联系人)可以做什么。
    猜你喜欢
    • 1970-01-01
    • 2020-09-19
    • 2022-08-15
    • 2020-12-20
    • 1970-01-01
    • 2021-10-25
    • 2021-02-12
    • 2021-01-23
    • 1970-01-01
    相关资源
    最近更新 更多