Web页面集成DEMO

编辑
文档创建者:doreen0813 (83193 )     浏览次数:81次     编辑次数:3次     最近更新:doreen0813 于 2018-11-08     

目录:

1、描述编辑

前面我们已经介绍了Web页面嵌入式集成的API接口及简单的集成例子,本章我们给出一些集成的DEMO及相关返回信息的说明。

2、相关API的DEMO编辑

注:以下DEMO均以FineBI的DEMO地址为例,URL可根据自身需要修改为指定服务器工程地址。  

2.1 获取业务包内表信息

HTML文件内容:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>业务包内所有表信息</title> </head> <body> <div id="app"></div> </body> <script src="http://code.jquery.com/jquery-2.1.1.min.js"></script> <script> var url = "http://demo.finebi.com/webroot/decision"; var userName = "demo", password = "demo"; function getPackTables(data) { var header = {}; header.Authorization = "Bearer " + data.accessToken; // 请求头中带上token $.ajax({ type: "GET", url: url + "/v5/api/conf/packs/dac1c0f5b11f46fcb9eb03280a4c26c5", headers: header, success: function (result) { var htm = "", data = result.data; htm += "<div>当前业务包名:" + data.name + "</div>"; htm += "<div>该业务包下有如下表:</div>"; htm += "<ul>"; data.tables.forEach(function (table) { htm += "<li>原始名:" + table.name + ", 转义名为:" +table.transferName + "</li>"; }); htm += "</ul>"; var app = document.getElementById("app"); app.innerHTML = htm; } }); } //先通过登录接口获取到token信息 $.ajax({ type: "GET", url: url + "/login/cross/domain?fine_username=" + userName + "&fine_password=" + password + "&validity=-1", dataType: "jsonp", success: function (data) { getPackTables(data); } }); </script> </html>

HTML文件下载地址:

getPackTables.html

结果预览:

222

2.2 获取业务包分组信息

HTML文件内容:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>获取业务包分组信息</title> </head> <body> <div id="app"></div> </body> <script src="http://code.jquery.com/jquery-2.1.1.min.js"></script> <script> var url = "http://demo.finebi.com/webroot/decision"; var userName = "demo", password = "demo"; function getPackGroups(data) { var header = {}; header.Authorization = "Bearer " + data.accessToken; // 请求头中带上token $.ajax({ type: "GET", url: url + "/v5/api/conf/groups", headers: header, success: function (result) { var htm = "", data = result.data; data.forEach(function (group, index) { if(group.id !== "__no_group__" ){ htm += "<div>当前分组名:" + group.name + "</div>"; } htm += "<ul>"; group.packs.forEach(function (pack, i) { htm += "<li>" + pack.name + "</li>"; }); htm += "</ul>"; }); var app = document.getElementById("app"); app.innerHTML = htm; } }); } //先通过登录接口获取到token信息 $.ajax({ type: "GET", url: url + "/login/cross/domain?fine_username=" + userName + "&fine_password=" + password + "&validity=-1", dataType: "jsonp", success: function (data) { getPackGroups(data); } }); </script> </html>

HTML文件下载地址:

getPackGroups.html

结果预览:

222

2.3 获取指定目录下模板与文件夹列表

HTML文件内容:

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>获取当前目录下模板与文件夹列表</title> </head> <body> <div id="app"> <span>当前节点为: /仪表板</span><br> <span>该节点下有如下文件(展示前20条数据):</span><br> <ul id="list"></ul> </div> </body> <script src="http://code.jquery.com/jquery-2.1.1.min.js"></script> <script> var url = "http://demo.finebi.com/webroot/decision"; var userName = "demo", password = "demo"; function getCurFolderFile(data) { var header = {}; header.Authorization = "Bearer " + data.accessToken; // 请求头中带上token var info = { catalog: [], // 当前目录路径。如是根节点则catalog是[],如果是'/根目录/新建文件夹/test',则catalog为['新建文件夹', 'test'] name: "" // name不重要 }; $.ajax({ type: "GET", url: url + "/v5/api/platform/dashboard/list?dir=" + encodeURIComponent(JSON.stringify(info)), headers: header, success: function (result) { var htm = "", data = result.data; data.splice(0, 20).forEach(function (file) { var isFolder = file.folder ? '是' : '否'; htm += "<li>文件名:" + file.name + ",是否为文件夹:" + isFolder + "</li>"; }); var app = document.getElementById("list"); app.innerHTML = htm; } }); } //先通过登录接口获取到token信息 $.ajax({ type: "GET", url: url + "/login/cross/domain?fine_username=" + userName + "&fine_password=" + password + "&validity=-1", dataType: "jsonp", success: function (data) { getCurFolderFile(data); } }); </script> </html>

HTML文件下载地址:

getCurFolderFile.html

结果预览:

222

3、返回参数说明编辑

3.1 业务包表信息

返回值示例:

222

  KEY  含义  备注
  errorTable  该table字段丢失  在BI中标红显示
  missTable  原始表被删除  在BI中灰化显示
  name  当前业务包名称  
  tables  正常table  

注:errortable和misstable 不会同时存在tables中。  

table属性:

 KEY  含义   备注
  fields  当前表字段信息  
  name  表的原始名  
  operators  表的相关操作  基础表(除自助数据集以外的表)的行列转换和自循环列操作,自助数据集的相关操作
  pack  业务包id  
  realTimeData  是否是实时数据  
  sourcename  可以忽略 
  transfername  转义名 
  type  表类型 1: 基础表(数据库中直接读取的表);

 2: SQL表;

 3: EXCEL表;

 4: 分析表;

3.2 业务包分组信息

返回值示例:

222

以上data中每个对象表示一个分组。

返回参数属性:

  KEY含义    备注
  myAnalysisTables我的自助数据集每个分组都有这个属性,但是只有默认分组(__no_group__)里的myAnalysisTables属性才有意义。里面的值只是为了计算我的自助数据集里面表的个数;
name分组名称__no_group__ 为默认分组
packs业务包除我的自助数据集以外的业务包

3.3 仪表板相关

返回值示例:

222

返回参数属性:

  KEY  含义  取值 备注 
  folder  是否是文件夹,如为true,则表示是文件夹  true;
  false;
  

  hangout  仪表板挂出状态  NORMAL:未申请挂出

  APPLYING: 申请挂出中

  HANGOUT: 已挂出

  只对dashboard有意义  
  pId  当前所在文件夹ID    如果位于根节点,则pId为当前登录的用户id



附件列表


主题: 部署集成
标签: 暂无标签 编辑/添加标签
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

本文档是否有用? [ 去社区提问 ]