代码之家  ›  专栏  ›  技术社区  ›  kumar chandraketu

将PowerBI仪表板/报表嵌入到Web应用程序中

  •  0
  • kumar chandraketu  · 技术社区  · 8 年前

    我正在尝试将power BI仪表板报表嵌入到Web应用程序中。

    1)我已经使用此Microsoft链接配置了应用程序,以及来自github的示例应用程序 https://docs.microsoft.com/en-us/power-bi/developer/embed-sample-for-your-organization .

    2) 我还尝试使用此文档进行配置 https://bitbucket.org/omnistream/powerbi-api-example \

    我使用公司电子邮件id/密码访问端点。以下是详细信息。我对仪表板报表有管理权限,我有power BI pro用户帐户。

    后端点: https://login.microsoftonline.com/common/oauth2/token

    请求头: 用户代理:Fiddler 主机:login.windows.net 内容类型:application/x-www-form-urlencoded 内容长度:xxx

    带请求正文: grant_type=password&scope=openid&username=myUserName@mycompany.com&password=MyPassword&client_id=XXXXX&resource= https://analysis.windows.net/powerbi/api&client_secret=XXXXX

    它抛出以下错误: error_description=AADSTS70002:验证凭据时出错。AADSTS50126:无效的用户名或密码 记录道ID:c13c59dc-79e2-4169-bae2-06c402310100 相关编号:a747a226-362a-45aa-956a-122629fa9863 时间戳:2018-08-06 21:27:59Z

    我需要单独配置或创建主电源BI帐户吗?

    或者,如果我的公司网络干扰了Post请求屏蔽用户id/密码,是否有任何工具可以帮助我跟踪此网络问题?

    1 回复  |  直到 8 年前
        1
  •  0
  •   kumar chandraketu    8 年前

    即使在绕过公司代理获取凭据之后,它也无法工作。 最后,我用微软记录了票证,并能让它只为一个选项工作,即本机应用程序。下面是步骤

    1) 从下载“App owns data”应用程序 here . 并在Azure门户中将power Bi应用程序注册为应用程序类型的“本机应用程序”。有关配置PowerBI应用程序网页嵌入的详细信息,请访问相关链接1。

    2) 打开项目并使用NUget包管理器导入所有必需的Dll。

    3)在项目中使用这些值配置cloud.config。

      <appSettings>
      <add key="authorityUrl" value="https://login.microsoftonline.com/common/oauth2/authorize/" />
      <add key="resourceUrl" value="https://analysis.windows.net/powerbi/api" />   
      <add key="apiUrl" value="https://api.powerbi.com/" />
      <add key="embedUrlBase" value="https://app.powerbi.com/v1.0/myorg/" /> 
    </appSettings>
    

    4) 在项目中使用这些值配置web.config文件。

        <appSettings file="Cloud.config">
        <add key="webpages:Version" value="3.0.0.0" />
        <add key="webpages:Enabled" value="false" />
        <add key="ClientValidationEnabled" value="true" />
        <add key="UnobtrusiveJavaScriptEnabled" value="true" />    
        <add key="applicationId" value="xxxxxxx-xxxx-xxxx-xxxx-xxxxxx" /> <!--For PowerBI Native application ID-->    
        <add key="workspaceId" value="xxxxxxx-xxxx-xxxx-xxxx-xxxxxx" />
        <!-- The id of the report to embed. If empty, will use the first report in group -->     
        <add key="reportId" value="xxxxxxx-xxxx-xxxx-xxxx-xxxxxx" />
        <!-- Note: Do NOT leave your credentials on code. Save them in secure place. -->
        <add key="pbiUsername" value="XXXXXXXXX@yourcompany.com" />
        <add key="pbiPassword" value="xxxxxxxx" />    
      </appSettings>
    

    5)在power BI站点上发布报表,创建仪表板,在上面的web.config设置中填写报表id和工作空间id。

    6) 执行应用程序。它应该适用于嵌入报表、仪表板和平铺类型。