1. 概述编辑
1.1 版本
FineBI 版本 | JAR 包版本 | 功能变动 |
---|---|---|
5.1 | - | - |
2020-08-04 | 单表更新和业务包更新支持设置全量&增量更新 | |
5.1.5 | 2020-09-02 | 单表更新和业务包更新接口中将使用「业务包名」参数变更为「业务包 ID」 |
5.1.7 | 2020-11-05 | 新增查询更新情况接口 |
1.2 应用场景
FineBI 是基于 B/S 架构的浏览器/服务器模式,现在用户开发的系统基本上趋向于 B/S 架构的浏览器/服务器模式,因此有些页面完全可以直接采用 Web 页面嵌入式集成的简易方式完成集成。
通过集成,用户从自己的系统通过链接使用浏览器访问 FineBI 的服务器,从而在自己系统内调用 FineBI 的 Web 页面。
1.3 功能简介
集成通常有两种方式:
直接使用 URL 链接
通过 JS 调用 JSON 来获得分析模板。
本章提供各部分的 URL 链接接口以及 JSON 格式的 API 。
FineBI 在嵌入式集成时一般分为两步:获取 Token 和调用其他相关 API ,详情请参见: Web页面简单集成例子 。
注1:由于平台安全限制,FineBI 在集成时需要将「管理系统>安全管理>安全防护」中的 Security Headers 关闭才可跨域。
注2:以下接口均支持跨域,且跨域与不跨域的返回值均一致。
2. 普通接口编辑
更多接口介绍可参见:在线接口文档
2.1 仪表板
2.1.1 仪表板列表
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
新建仪表板 | 使用该接口可以新建一个仪表板 | 新建仪表板 |
删除仪表板 | 通过调用该接口,用户可以删除已经创建好的仪表板 | 删除仪表板 |
重命名仪表板 | 通过调用该接口,用户可以修改已经创建好的仪表板的名称 | 重命名仪表板 |
仪表板另存为 | 使用该接口可以另存一个仪表板 | 仪表板另存为 |
当前目录下仪表板和目录列表 | 通过调用该接口,查询当前目录下仪表板和目录列表 | 当前目录下仪表板和目录列表 |
获取一组仪表板的目录信息 | 通过调用该接口,查询当前一组仪表板的目录信息 | 获取一组仪表板的目录信息 |
获取「模板管理」节点下所有模板相关信息 | 通过调用该接口,可以获取模板管理节点下所有模板相关信息 | 仪表板管理节点所有仪表板信息 |
创建公共链接 | 通过调用该接口,可以创建公共链接 | 创建公共链接 |
2.1.2 用户信息
使用该接口可以获取当前用户的所有详细信息,目前包括 departs、roles、users、reports,接口为:/v5/api/dashboard/user/info。详情请参见:当前用户所有详细信息
2.1.3 仪表板
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
仪表板导出 Excel | 通过调用该接口,可以导出当前仪表板的 Excel | 仪表板导出Excel |
仪表板导出 PDF | 通过调用该接口,可以导出当前仪表板的 PDF | 仪表板导出 PDF |
仪表板生成图片 | 通过调用该接口,使当前仪表板生成图片 | 仪表板生成图片接口 |
2.1.4 分享
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
取消分享 | 用户可以将某个用户对的仪表板分享取消 | 取消分享 |
分享仪表板给其他用户 | 包括管理员在内的用户访问分享仪表板接口,通过调用该接口,可以分享仪表板给多个用户 | 分享仪表板给其他用户 |
分享给我的所有仪表板 | 通过调用该接口,返回分享给我的所有仪表板信息 | 分享给我的所有仪表板 |
仪表板分享给哪些用户 | 通过调用该接口,返回仪表板分享的用户列表 | 仪表板分享给哪些用户 |
2.2 Spider-数据准备
2.2.1 更新
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
触发全局更新 | 使用该接口触发全局更新,根据当前业务包的状态选择是全局更新/ Check 更新/配置更新。该过程不重复拉起相关子表更新 若满足下面条件:
调用该接口后:
注:2020-11-05 及之后的JAR,返回数值中有更新实例 id | 触发全局更新 |
触发单表或业务包更新 | 作用:
注:2020-11-05 及之后的JAR,返回数值中有更新实例 id | 触发单表或业务包更新 |
查询更新情况接口 | 可查询更新情况 URL:/v5/api/conf/update/instance/更新实例 id 注:该接口适用于 2020-11-05 及之后的 JAR;更新实例 id 示例:「b58924f1-5141-44a8-9122-fb635b4cd599」,具体请参见:获取此次更新实例的信息 |
「触发单表或业务包更新接口」不同版本说明:
接口:/v5/api/conf/update/pack/table?info=xx
请求方式:GET
1)业务包更新
请求示例:
localhost:37799/webroot/decision/v5/api/conf/update/pack/table?info={"packageName":"业务包"}
参数说明:
参数 | 版本 | 说明 | 示例 |
---|---|---|---|
info | 2020-01-15 及之前的版本 | 需要更新的业务包信息 | {"packageName":"业务包"} |
2020-08-04 版本 | |||
2020-09-02 版本 | {"packageId":"业务包ID"} |
2)单表更新
请求示例:localhost:37799/webroot/decision/v5/api/conf/update/pack/table?info={"packageName":"业务包","tableName":"产品销售表"}
参数说明:
参数 | 版本 | 说明 | 示例 |
---|---|---|---|
info | 2020-01-15 及之前的版本 | 需要更新的表信息 | {"packageName":"业务包","tableName":"表转义名"} |
2020-08-04 版本 | {"packageName":"业务包","tableName":"转义名","fullLoad":"false"} | ||
2020-09-02 版本 | {"packageId":"业务包ID","tableName":"转义名","fullLoad":"false"} |
注:fullload 参数为 false 表示增量更新,true 为全量更新,不填改参数默认为 true 。
2.2.2 表
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
添加表 | 通过调用该接口,添加表数据 | 添加表 |
获取数据集 | 通过调用该接口,获取数据集的信息 | 获取数据集 |
删除表 | 通过调用该接口,删除当前表 | 删除表 |
2.2.3 业务包
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
在分组下默认添加业务包 | 通过调用该接口,在分组下添加业务包 | 在分组下默认添加业务包 |
获取业务包信息 | 通过调用该接口,获取当前业务包的信息 | 获取业务包信息 |
重命名业务包 | 通过调用该接口,对业务包进行重命名 | 重命名业务包 |
删除业务包 | 通过调用该接口,删除业务包 | 删除业务包 |
根据业务包ID获取业务包信息 | 通过调用该接口,查询业务包信息 | 根据业务包ID获取业务包信息 |
根据业务包名获取业务包信息 | 通过调用该接口,查询业务包信息 | 根据业务包名获取业务包信息 |
2.2.4 业务包分组
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
分组重命名 | 通过调用该接口,对分组进行重命名 | 分组重命名 |
删除分组 | 通过调用该接口,删除当前分组 | 删除分组 |
添加分组 | 通过调用该接口,在根目录添加分组 | 添加分组 |
获取所有业务包分组信息 | 通过调用该接口,获取用户可见的所有的业务包分组信息 | 获取所有业务包分组信息 |
2.3 决策平台部分
2.3.1 目录管理-仪表板
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
添加仪表板 | 通过调用该接口,在目录管理中添加仪表板 | 添加仪表板 |
编辑仪表板 | 通过调用该接口,在目录管理中编辑仪表板相关信息 | 编辑仪表板 |
2.3.2 权限管理-业务包
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
获取载体权限 | 通过调用该接口,获取业务包权限 | 获取载体权限 |
获取实体权限 | 通过调用该接口,在权限快捷配置界面获取业务包权限 | 获取实体权限 |
更新载体权限 | 通过调用该接口,更新业务包权限 | 更新载体权限 |
更新实体权限 | 通过调用该接口,权限快捷配置界面更新业务包权限 | 更新实体权限 |
2.3.3 外观配置
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
修改BI样式 | 通过调用该接口,修改BI模板全局样式 | 修改BI样式 |
获取BI样式 | 通过调用该接口,获取BI样式 | 获取BI样式 |
2.3.4 系统管理
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
修改BI参数 | 通过调用该接口,修改BI参数 | 修改BI参数 |
获取BI参数 | 通过调用该接口,获取BI参数 | 获取BI参数 |
2.3.5 智能运维
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
还原备份 | 通过调用该接口,还原备份 | 还原备份 |
查询系统访问次数 | 通过调用该接口,查询系统访问次数 | 查询系统访问次数 |
获取服务器使用情况 | 通过调用该接口,获取服务器使用情况 | 获取服务器使用情况 |
查询模板访问明细 | 通过调用该接口,查询模板访问明细 | 查询模板访问明细 |
查询用户行为日志 | 通过调用该接口,查询用户行为日志 | 查询用户行为日志 |
查询管理日志 | 通过调用该接口,查询管理日志 | 查询管理日志 |
取模板热度汇总列表 | 通过调用该接口,查看模板热度汇总列表 | 取模板热度汇总列表 |
2.3.6 安全管理
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
修改全局水印配置 | 通过调用该接口,修改全局水印配置 | 修改全局水印配置 |
获取全局水印配置 | 通过调用该接口,获取全局水印配置 | 获取全局水印配置 |
预览 | 通过调用该接口,预览带有全局水印的模板 | 预览 |
2.3.7 模板认证
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
取所有有认证权限的仪表板 | 通过调用该接口,查询所有有认证权限的仪表板 | 取所有有认证权限的仪表板 |
2.3.8 定时调度
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
根据用户组、参数等算出结果限制 | 通过调用该接口,获取是否根据用户组返回的信息 | 根据用户组、参数等算出结果限制 |
2.4 BI 接口
2.4.1 业务包
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
获取登录名所在字段信息 | 通过调用该接口,获取登录名所在字段信息 | 获取登录名所在字段信息 |
设置登录名所在字段信息 | 通过调用该接口,设置登录名所在字段信息 | 设置登录名所在字段信息 |
取分组业务包 | 有部分或者全部分组或业务包使用权限的用户访问获取分组和业务包信息接口,返回有权限的分组名和业务包名,超管返回全部业务包和分组信息;次级管理员返回有权限的全部业务包和分组信息 | 取分组业务包 |
取表中某一个字段所有数据 | 通过调用该接口,查询表中某一个字段的全部数据 | 取表中某一个字段所有数据 |
根据字段id查字段名 | 通过调用该接口,根据字段id查询字段名称 | 根据字段id查字段名 |
添加一个行过滤器 | 通过调用该接口,添加一个行过滤器 | 添加一个行过滤器 |
更新一个行过滤器 | 通过调用该接口,更新一个行过滤器 | 更新一个行过滤器 |
某字段所在的表及其子表 | 通过调用该接口,查询某字段所在表及其子表 | 某字段所在的表及其子表 |
取业务包下的所有表 | 通过调用该接口,查询业务包下的所有表 | 取业务包下的所有表 |
查询行过滤器 | 通过调用该接口,查询行过滤器的信息 | 查询行过滤器 |
获取一个数据表下带有权限详情的所有字段 | 通过调用该接口,查询一个数据表下带有权限详情的所有字段 | 获取一个数据表下带有权限详情的所有字段 |
取表下的所有字段 | 通过调用该接口,查询当前表的所有字段 | 取表下的所有字段 |
2.4.2 仪表板
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
申请挂出仪表板 | 通过调用该接口,申请挂出某个仪表板 | 申请挂出仪表板 |
获取分享和公共链接功能控制状态 | 通过调用该接口,获取分享和公共链接功能控制状态 | 获取分享和公共链接功能控制状态 |
更新分享和公共链接功能状态 | 通过调用该接口,更新分享和公共链接功能状态 | 更新分享和公共链接功能状态 |
取所有仪表板 | 通过调用该接口,获取所有仪表板信息 | 取所有仪表板 |
模板管理页面搜索仪表板 | 通过调用该接口,在模板管理界面搜索仪表板 | 模板管理页面搜索仪表板 |
通过id获取仪表板 | 通过调用该接口,通过模板id获取仪表板 | 通过id获取仪表板 |
取用户自己的仪表板 | 通过调用该接口,获取登录用户的模板信息 | 取用户自己的仪表板 |
查询当前用户的分享和公共链接权限状态 | 通过调用该接口,查询当前用户的分享和公共链接权限状态 | 查询当前用户的分享和公共链接权限状态 |
查看挂出状态 | 通过调用该接口,查询模板挂出状态 | 查看挂出状态 |
2.4.3 分享
接口名称 | 接口描述 | 更多介绍 |
---|---|---|
获取分享给我的模板 | 通过调用该接口,查询分享给我的模板 | 获取分享给我的模板 |
可以分享的人 | 通过调用该接口,查询可以分享的人 | 可以分享的人 |
获取已分享的实体 | 通过调用该接口,获取已分享人的信息 | 获取已分享的实体 |
可以分享的角色 | 通过调用该接口,查询可以分享的角色 | 可以分享的角色 |
获取当前类型下分享信息 | 通过调用该接口,获取当前类型下的分享信息 | 获取当前类型下分享信息 |
获取分享部门的根节点 | 通过调用该接口,获取分享部门的根节点 | 获取分享部门的根节点 |
分层获取可以分享的部门 | 通过调用该接口,分层获取到可以分享的部门 | 分层获取可以分享的部门 |
搜索部门职位 | 通过调用该接口,搜索部门职务 | 搜索部门职位 |
更新分享权限 | 通过调用该接口,更新分享权限的信息 | 更新分享权限 |
3. 页面集成接口编辑
很多用户为了统一门户,往往会把 FineBI 的后台管理页面集成到自己的系统中,本章提供 FineBI 支持的页面集成接口。
3.1 示例
以将数据决策系统的「模板管理页面」集成到用户系统为例。
以管理员身份进入数据决策系统,访问链接:http://localhost:37799/webroot/decision/dashboard/management ,如下图所示:
以管理员身份进入数据决策系统,其中每个接口调用方法为访问:http://ip:端口/工程名/decision/接口调用
支持单独页面集成的管理菜单范围如下表所示:
管理菜单 | 接口调用 | 备注 |
---|---|---|
模板管理 | /dashboard/management | - |
目录管理 | /directory | - |
用户管理 | /user | - |
权限管理 | /privilege | - |
定时调度 | /timer | 无全局设置 注:5.1.5 版本,2020-09-02 及之后的 JAR 支持调用该接口 |
3.2 没有页面访问权限
问题描述:
用户以非管理员身份进入数据决策系统后,访问:http://IP:Port/webroot/decision/接口调用 ,出现如下报错:
解决方案:
需要获得该页面的权限,请参考 分级权限分配
4. 注意事项编辑
4.1 服务器不支持 JSON 下的 URL
因为 FineBI 中 URL 传递 JSON 对像,若有些服务器不支持 JSON 的 URL ,就需要把 JSON 类型的 URL 参数值先进行编码encodeURIComponent()。
例如:
dir={"name":"新建仪表板12","catalog":[]} 需要改为:
encodeURIComponent(JSON.stringify({"name":"新建仪表板12","catalog":[]}))
编码显示为:
dir=%7B%22name%22%3A%22%E6%96%B0%E5%BB%BA%E4%BB%AA%E8%A1%A8%E6%9D%BF12%22%2C%22catalog%22%3A%5B%5D%7D
4.2 返回错误码
在进行系统集成时,如果后台有错误,会返回错误码(errorCode),具体异常码定义可以参考 系统错误码说明