【发布时间】:2018-03-08 16:29:23
【问题描述】:
我正在尝试从嵌入视图中的数据集创建新报表。但是,我不断收到“此内容不可用”,并且 reportEmbed.min.js 在渲染时返回 403。在 app.powerbi.com 中,我可以成功创建和保存报告,但如上所述,嵌入式视图不起作用。
我完全遵循此文档: https://github.com/Microsoft/PowerBI-JavaScript/wiki/Create-Report-in-Embed-View
但是,我通过 Power BI API 调用生成我的嵌入令牌,因为此处的文档允许: https://msdn.microsoft.com/en-us/library/mt784614.aspx
这是我的服务器端 embedToken 生成代码:
const createReportEmbedTokenForCreation = ({
accessToken,
groupId,
datasetId,
}) =>
new Promise((resolve, reject) => {
const url = `https://api.powerbi.com/v1.0/myorg/groups/${groupId}/reports/GenerateToken`;
const headers = {
'Content-Type': 'application/x-www-form-urlencoded',
Authorization: `Bearer ${accessToken}`,
};
const form = {
accessLevel: 'Create',
datasetId,
allowSaveAs: true,
};
request.post({ url, form, headers }, (err, result, body) => {
if (err) return reject(err);
const bodyObj = JSON.parse(body);
if (bodyObj.error) return reject(new Error(body));
return resolve(bodyObj.token);
});
});
这是我的客户端嵌入代码:
const config = {
accessToken: embedToken,
embedUrl: 'https://embedded.powerbi.com/appTokenReportEmbed',
datasetId: defaultReport.datasetId,
};
const report = powerbi.createReport(
document.getElementById('ReportEmbed'),
config,
);
我是否在某些地方遗漏了一些范围?
提前致谢!
【问题讨论】:
标签: javascript node.js powerbi powerbi-embedded