将报表嵌入第三方的传统方式是通过传入管控台个人信息中的AccessId和AccessKey获取token后提工单开通报表权限。现在群空间下支持用户自助化开通报表权限,使用更加方便。本文档为您介绍具体实现方法。 一、 通过https接口获取accessToken 1. 获取请求地址https://das.base.shuju.aliyun.com/api/ac3rdservice/token.json?accessId=xxx&accessKey=xxx&aliyunId=xxx&validityTime=60 中的参数accessId、accessKey、aliyunId。
获取accessId和accessKey 在控制台首页进入空间设置,通过组织管理 > 识别码,获取accessId和accessKey。其中QuickBI AccessKey ID为accessId,QuickBI AccessKey Secret为accessKey。
获取aliyunId 如果您使用的是主账号,aliyunId为DATAIDE登录时使用的阿里云账号,如下图所示。
如果您使用的是子账号,aliyunId参数的内容格式为:主账号的账号名:子账号,如下图所示。
示例如下: https://das.base.shuju.aliyun.com/api/ac3rdservice/token.json?accessId=xxxxxxxxxxxxxxxxxxxxxxx&accessKey=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&aliyunId=136***59:yuan_sub1&validityTime=60
说明:请保持申请开通仪表板接入权限的帐号(支持主子账号)与仪表板制作者一致。 2. 发送get请求获取token 将以上步骤中获取的参数拼接到请求地址https://das.base.shuju.aliyun.com/api/ac3rdservice/token.json?accessId=xxx&accessKey=xxx&aliyunId=xxx&validityTime=60 中,发送get请求获取token。
当success为true的时候,说明获取token成功,accessToken的值就是token。 说明:若在accessToken有效期内再次发送请求获取或者访问报表,都会自动延迟默认设置的token有效时长。例如:第一次获取validityTime设置为10分钟,在10分钟之内再次发送请求,会在此基础上续期10分钟;只有在token失效后再次获取,token内容才会改变;若想立即取消token时效,可以发送如下post请求,将参数修改为自己的即可:https://das.base.shuju.aliyun.com/api/ac3rdservice/tokenInvalid.json?aliyunId=XXX&accessToken=XXX。 二、 添加需要嵌入的仪表板 1. 在Quick BI首页,单击顶部开放服务。 2. 在开放服务页面,选择分享中心中的报表嵌入。 3. 在报表嵌入页面,单击+新增嵌入报表。 4. 在新增嵌入报表页面,选择相应的群空间和空间下要嵌入的报表,单击确定。
三、 拼接免登url
上图中预览的地址就是访问报表的地址。预览地址域名为:das.base.shuju.aliyun.com,支持将域名修改为:bi.aliyun.com 。 将第一步中生成的accessToken追加到报表的url后面,即可免登查看了,URL为:http://das.base.shuju.aliyun.com/token3rd/dashboard/view/pc.htm?pageId=703d6621-7aa0-4716-bcc1-515e3da794c2&accessToken=4a20bafc-ed0c-4db1-ac6c-08cfff3defa9。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。