使用 GenerateTokenRequestV2 在嵌入式 Power BI 中创建报表

Create Report in Embedded Power BI with GenerateTokenRequestV2

我将 powerBI 嵌入到 Web 应用程序中。该应用程序还包含创建新报告的功能,并将其保存到具有指定数据集的工作区中。

新的体验工作区提供了数据集共享功能,这将使用户能够跨多个工作区创建报告,但使用来自一个工作区的数据集。我已经使用 GenerateTokenRequestV2 to generate the embed token and used the Microsoft client library for JS PowerBI-Client 嵌入了相同的内容。

我能够成功嵌入并使用指定的数据集创建报告,但在尝试保存报告时出现错误。 网络选项卡显示端点“https://wabi-west.../explore/explorations?name={Report Name}”的调用返回 403 状态代码。

发送到 powerbi-client 库的配置:

{
      type: 'report',
      tokenType: 1,
      accessToken: '__access_token__',
      embedUrl 'https://app.powerbi.com/reportEmbed',
      datasetId: '__shared_datasetID__',
      groupId: '__target_workspaceID__',
}

感谢任何帮助。提前致谢。

这里可能有 2 个问题。

缺少作用域

请检查您的 AAD 应用程序是否具有保存报表所需的范围。您需要 Report.ReadWriteAllDataset.ReadWriteAll.

您可以通过进入应用程序注册从此处的 Azure 门户更改权限。

更新权限并重试。

角色级别

作为新 PowerBI V2 工作区的用户,请检查您是否没有查看者级别的角色,因为它只为用户提供 read-only 体验。您将无法保存报告,API 会给您 403,这是禁止的错误。

根据原始文档,有一个 limitations 在嵌入式报告创建模式下使用共享数据集的列表。