Javascript 在HTML页面中嵌入Power BI报告

Javascript 在HTML页面中嵌入Power BI报告,javascript,html,powerbi,adal,Javascript,Html,Powerbi,Adal,我正在尝试在HTML页面中嵌入Power BI报告,现在我知道如何创建基本代码,以便使用javascript将报告嵌入到iframe中,但问题是我无法在后端自动生成和刷新访问令牌。我正在考虑使用ADAL JS进行身份验证。任何人都有这方面的经验,或者如果有人有任何其他解决方案,我们欢迎。请原谅我知之甚少,但我不是开发人员 提前感谢 您可以通过ADAL.js或任何其他AJAX\HTTP库创建令牌 函数EmbeddeReportandSetTokenListener(setAccessToken=

我正在尝试在HTML页面中嵌入Power BI报告,现在我知道如何创建基本代码,以便使用javascript将报告嵌入到iframe中,但问题是我无法在后端自动生成和刷新访问令牌。我正在考虑使用ADAL JS进行身份验证。任何人都有这方面的经验,或者如果有人有任何其他解决方案,我们欢迎。请原谅我知之甚少,但我不是开发人员 提前感谢

您可以通过ADAL.js或任何其他AJAX\HTTP库创建令牌

函数EmbeddeReportandSetTokenListener(setAccessToken=false,
reportId,
groupId,
datasetId,
访问级别,
巴塞乌里,
嵌入URL){
//生成嵌入令牌
generateEmbedToken(报告ID、组ID)
.then(功能(令牌){
var embeddetoken=Token.Token;
//设置嵌入报表的配置
var config=createConfig(嵌入令牌、嵌入URL、报告ID);
//获取对嵌入报表HTML元素的引用
var embedContainer=$('#embedContainer')[0];
//嵌入报表并将其显示在div容器中。
var report=powerbi.embed(embedContainer,config);
//Report.off删除给定的事件处理程序(如果存在)。
报告。关闭(“加载”);
//Report.on将添加一个打印到日志窗口的事件处理程序。
report.on(“已加载”,函数(){
//设置令牌过期侦听器
setTokenExpirationListener(Token.expiration,
到期前2/*分钟*/,
reportId,
groupId);
});
});
}
函数setTokenExpirationListener(tokenExpiration,
minutesToRefresh=2,
reportId,
组ID){
//获取当前时间
var currentTime=Date.now();
var expiration=Date.parse(tokenExpiration);
var safetyInterval=minutesToRefresh*60*1000;
//令牌刷新之前的时间(毫秒)
var超时=到期-当前时间-安全间隔;
//如果令牌已过期,则生成新令牌并设置访问令牌
如果(超时)