Power BI REST API ExportToFileInGroup 不工作

问题描述

我能够以编程方式登录PowerBI Client,收集我的工作区以及从特定工作区获取特定报告。 我需要以编程方式将该报告呈现为 .pdf 或 .xlsx 文件据称这可以通过 ExportToFileInGroup/ExportToFileInGroupAsync methods 实现。我什至创建了一个非常简单的报告,没有任何参数。我可以使用来自 here 的示例应用嵌入。所以这至少告诉我我在后端有我需要的设置。但是当我尝试运行 ExportToFileInGroupAsync 方法时它失败了(代码下方的错误。)

我的代码是:

var accesstoken = await tokenAcquisition.GetAccesstokenForUserAsync(new string[] {
  PowerBiScopes.ReadReport,PowerBiScopes.ReadDataset,});

var userInfo = await graphServiceClient.Me.Request().GetAsync();
var userName = userInfo.Mail;

AuthDetails authDetails = new AuthDetails {
  UserName = userName,Accesstoken = accesstoken,};

var credentials = new TokenCredentials($"{accesstoken}","Bearer");
PowerBIClient powerBIClient = new PowerBIClient(credentials);

var groups = await powerBIClient.Groups.GetGroupsAsync();
var theGroup = groups.Value
  .Where(x => x.Name == "SWIFT Application Development")
  .FirstOrDefault();

var groupReports = await powerBIClient.Reports.GetReportsAsync(theGroup.Id);
var theReport = groupReports.Value
  .Where(x => x.Name == "No Param Test")
  .FirstOrDefault();

var exportRequest = new ExportReportRequest {
  Format = FileFormat.PDF,};

string result = "";

try {
  var response = await powerBIClient.Reports.ExportToFileInGroupAsync(theGroup.Id,theReport.Id,exportRequest);
  result = response.ReportId.ToString();
} catch (Exception e) {
  result = e.Message;
}

return result;

它到达 try 块中的行,然后抛出以下错误

发送请求时出错。

无法从传输连接读取数据:现有连接被远程主机强行关闭..

更新 关于@AndreyNikolov 问题,这是我们的嵌入式容量:

enter image description here

实施后,没有任何变化。同样的错误

解决方法

事实证明问题出在我们这边,更具体地说,是安全/防火墙设置。以下是我们网络专家的原话。

“经过进一步调查,我们确定是我们的防火墙在终止 SSL 连接时导致了此问题。我们能够为 URL 添加绕过,现在它按预期工作。”