使用 Power REST API - 获取组中的页面时,有没有办法从报告中过滤掉 "Hidden" 页面

Is there a way to filter out "Hidden" Pages from a Report when using the Power REST API - Get Pages in Group

我正在尝试在 Angular 应用程序中构建一个组件来嵌入报告。

使用的技术:

我们正在调用位于此处的 Get Pages in Group 端点: https://docs.microsoft.com/en-us/rest/api/power-bi/reports/getpagesingroup

发生的事情是 app.powerbi.com 工作区的报告中存在“隐藏”页面。检索报告页面时,它会恢复所有页面,甚至是隐藏的页面。

这些页面是旧页面或 WIP,最终用户不应看到这些页面。

在上面链接的 PowerBI REST API 端点中是否有过滤这些的方法?

目前我能看到的解决方案只有:

希望有人能提供帮助。 :) 如果需要,很乐意添加更多信息。

您可以使用报告页面的可见性 属性,然后相应地过滤页面。

标记为隐藏的页面的可见性 属性 设置为 1。

请参考以下代码片段:

async function showPages() {
  // Use getPages API to get the list of pages
  pages = await report.getPages();

  for (let i=0; i < pages.length; i++) {

    // Check visibility property of the page object
    if (pages[i].visibility) {
      continue;
    }
      // Append page name to the dropdown
      $('#selectBox').append($('<option />').text(pages[i].displayName))
  }
}

现在,隐藏的页面将不会显示在下拉列表中。

也可以参考https://docs.microsoft.com/en-us/javascript/api/powerbi/powerbi-client/page.page#visibility