quickBI嵌入自研系统

一、支持业务场景:
参考连接:概述 - Quick BI - 阿里云
支持的业务场景:
1、嵌入分析:将分析结果以页面或卡片形式嵌入到业务系统中融为一体,进行交互式分析。
2、数据对接(专业版):可接入客户数据源,提供数据查询、分析服务。
3、对接API:可接收系统的事件进行处理,执行资源管理任务。
4、自定义组件平台:可基于组件SDK来创建新的图表或控件,请参见开放组件。

可嵌入报表数量:

二、基础报表嵌入方案:
根据quickBI账号获取Token,在报表url的后面拼接上该token进行授权。
参考连接:报表嵌入的基础方案 - Quick BI - 阿里云

步骤1、生成AccessToken
(1)在控制台-组织信息-识别码,获取AccessKey ID和AccessKey Secret。
(2)在控制台-用户管理,查找要生成Token的Aliyun ID(账号),如果您使用的是子账号,则Aliyun ID为主账号的账号名:子账号。假设主账号的账号名为test,子账号为zhangsan@sdf123.onaliyun.com,则Aliyun ID为test:zhangsan。
(3)调用生成Token接口,将上述步骤获取的AccessKey ID、AccessKey Secret和Aliyun ID参数拼接到如下请求地址中,并发送get请求获取Token。
例:https://bi.aliyun.com/api/ac3rdservice/token.json?accessId=270216e5-9d6e-468a-af3c-035631559849&accessKey=98d376c8-64fc-44cf-b4a2-117d9b01db7e&aliyunId=gongkongsaas:xiaodong.rong&validityTime=60

步骤2、添加需要嵌入的仪表板(仅当仪表板是发布状态时,才支持设置报表嵌入功能)
在开发者中心-报表嵌入,选择要嵌入的报表。

步骤3、拼接免登URL
在开发者中心-嵌入分析,点击查看对应报表的url,将通过步骤1获取的Token加到报表url后面。(注意url是阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台开头,而不是编辑报表时的url)例:https://bi.aliyun.com/dashboard/view/pc.htm?pageId=098abe24-d607-40b3-91da-eac219b3412b&accessToken=1cf29520503c60081df4530a8b6d42d8

三、安全增强方案:
所谓安全增强就是生成AccessTicket(相当于普通方案的AccessToken)的时候可以限定某个报表,报表内的某个组件,报表的调用次数,定义水印,报表过滤条件。
参考连接:报表嵌入数据权限控制和传参的安全增强方案 - Quick BI - 阿里云

生成安全增强方案的Ticket:
阿里云 OpenAPI 开发者门户
拼接后实例:https://bi.aliyun.com/dashboard/view/pc.htm?pageId=098abe24-d607-40b3-91da-eac219b3412b&cmptId=50c6d5b4-bf10-4210-86ac-0bb8825cb2c1&accessTicket=8ea38fae-9f11-4286-b746-e4cc1226d278

四、数据权限控制
可在控制中心-集中授权,对用户进行数据权限设置

五、自研系统应用:
1、在自研系统用户表增加quickBI账号字段,建立自研系统账号和quickBI账号的对应关系,在生成报表Token或Ticket时使用。如果quickBI账号和自研系统账号保持一致则不需要。
2、quickBI账号限定50个,可创建基础的通用账号供自研系统普通用户使用。
3、在自研系统通过<Iframe>标签嵌入生成的免登录url。通过一下2种方案可以使报表自适应Iframe的高度:

(1)主动传递Iframe内容高度给外部页面。

// Quick BI地址,如使用其他地址可自行补充

const quickBIURL = ['https://bi.aliyun.com'];

function messageListener(event) {

  if (quickBIURL.includes(event.origin)) {

    // 使用postMessage传出的高度

    console.log('Quick BI Dashboard Height:', event.data.height);

    // 使用postMessage传出的仪表板页面ID

    console.log('Quick BI Dashboard Id:', event.data.pageId);

  }

}

// 在仪表板加载之前进行监听

window.addEventListener('message', messageListener);

(2)外部页面主动通过postMessage到Iframe页面获取仪表板高度。
其中:Iframe为嵌入Quick BI仪表板的Iframe。message传入的data中必须包含{ getDashboardHeight: true }。
代码块示例如下:

// Quick BI地址,如使用其他地址可自行补充

const quickBIURL = ['https://bi.aliyun.com'];

function messageListener(event) {

  if (quickBIURL.includes(event.origin)) {

    // 使用postMessage传出的高度

    console.log('Quick BI Dashboard Height:', event.data.height);

    // 使用postMessage传出的仪表板页面ID

    console.log('Quick BI Dashboard Id:', event.data.pageId);

  }

}

// 在仪表板加载之前进行监听

window.addEventListener('message', messageListener);

// 主动请求Quick BI仪表板高度

// 嵌入Quick BI仪表板的Iframe

const iframe = document.querySelector('iframe');

// message传入的data中必须包含{ getDashboardHeight: true }

iframe.contentWindow.postMessage({getDashboardHeight: true}, '*');

完整实例代码:

<!DOCTYPE html>

<html lang="en">

    <head>

        <meta charset="UTF-8" />

        <meta name="viewport" content="width=device-width, initial-scale=1.0" />

        <meta http-equiv="X-UA-Compatible" content="ie=edge" />

    </head>

    <body>

        <iframe

        class="quickbi-iframe-demo"

      //<page_Id>为仪表板页面的ID,access_Token为访问仪表板的准入令牌

      src="https://bi.aliyun.com/token3rd/dashboard/view/pc.htm?pageId=<page_Id>&accessToken=<access_Token>

      scrolling="no"

      frameborder="0"

      width="100%"

      height="600">

    </iframe>

        <script>

      // Quick BI地址,如使用其他地址可自行补充

      const quickBIURL = ['https://bi.aliyun.com'];

      function messageListener(event) {

        if (quickBIURL.includes(event.origin)) {

          // 使用postMessage传出的高度

          console.log('Quick BI Dashboard Height:', event.data.height);

          // 使用postMessage传出的仪表板页面ID

          console.log('Quick BI Dashboard Id:', event.data.pageId);

        }

      }

      // 在仪表板加载之前进行监听

      window.addEventListener('message', messageListener);

      // 嵌入Quick BI仪表板的Iframe

      const iframe = document.querySelector('iframe');

       

       // 主动请求Quick BI仪表板高度

      // message传入的data中必须包含{ getDashboardHeight: true }

      iframe.contentWindow.postMessage({getDashboardHeight: true}, '*');

        </script>

    </body>

</html>

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
QuickBI是一款针对企业数据分析和可视化的自助式商业智能软件。白皮书是QuickBI官方发布的详细介绍和说明文档,旨在对QuickBI的特点、功能和优势进行全面阐述。 QuickBI的白皮书首先介绍了其所适用的领域和目标用户群体。作为一款面向企业的商业智能软件,QuickBI被设计用于帮助企业利用自身数据实现业务洞察和决策优化。其主要目标用户包括企业高管、业务分析师以及数据科学家等从事业务分析和数据利用的人群。 接着,白皮书详细说明了QuickBI的功能和特点。QuickBI提供了丰富的数据连接和整合功能,支持从各种数据源中获取和整理数据,并将其转化为易于理解和分析的形式。用户可以通过交互式的可视化工具,轻松地制作和定制报表、仪表盘以及图表,以满足不同业务需求。QuickBI还提供了智能化的数据挖掘分析功能,帮助用户发现数据中的内在规律和趋势。 此外,白皮书还强调了QuickBI的优势和价值。首先是其自助式和易用性,用户无需具备高深的技术和编程知识,即可进行数据分析和可视化;其次是快速性,用户能够在短时间内完成对数据的分析和展示,从而快速作出决策;最后是灵活性,QuickBI支持云端部署和移动端访问,用户可以随时随地获取数据和进行分析。 综上所述,QuickBI的白皮书详细介绍了该软件的功能、特点以及应用领域,强调了其自助式、快速和灵活的优势。通过使用QuickBI,企业能够从海量数据中快速提取有价值的信息,为决策提供有效支持,并提升企业的竞争力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值