1. 概述
在完成开放平台API、应用和权限配置后,就可以调用API接口,实现相应的功能。
本文档将提供多种调用示例Demo,帮助大家理解开放平台的使用。
注:本文档的示例,均直接调用基础数据接口下的内置服务,在决策系统重启后,服务中用户已配置好的数据,会重置为默认数据。
建议使用者在实际使用中,将内置服务复制后,在新服务中,自行进行配置,可以避免上述问题。
2. SQL数据服务
本Demo示例展示:如何将SQL转换成数据服务向第三方提供使用的场景
需用到的API接口实例是:[demo]Sql数据服务
2.1 API管理
在API管理的基础数据接口中,点击[demo]Sql数据服务的编辑按钮,如下图所示:
在基础页面,信息已默认配置好,无需任何操作。
此处只需记下API路径和API方法两个参数,用于后续步骤中,API调用时的链接填写。
在配置页面,有2个配置项,分别为:
connection:SQL运行的数据源连接名称(比如FRDemo之类的)
sql:数据来源的SQL
在这个示例中,我们的配置为:
connection = FRDemo
sql = SELECT * FROM `销量` where 地区 = '华东'
2.2 应用管理
新建应用,命名为为“测试”。记下应用ID和密钥两个参数,用于后续步骤中,API调用时的鉴权。
2.3 权限管理
在权限管理中,选定应用为“测试”;开启基础数据接口分组中,[demo]Sql数据服务的权限。以保证该API可用
2.4 效果预览
链接为:http://localhost:8075/webroot/decision/sp/client/api/sql/data
其中http://localhost:8075/webroot/decision/sp/client/api/为固定链接部分,sql/data和GET分别为API路径和API方法;
将应用ID和密钥写入Headers中,最后调用API,得到的结果如下图所示:
3. 报表数据集服务
本Demo示例展示:如何将已经做好的模板内的数据集数据,向第三方进行提供
需用到的接口实例是:[demo]报表数据集服务
3.1 配置过程
参考2.1、2.2节,SQL数据服务的配置过程
API管理:
1)在API管理的基础数据接口中,点击[demo]报表数据集服务的编辑按钮,进行API信息的配置
2)在基础页面,信息已默认配置好,无需任何操作;此处只需记下API路径和API方法两个参数,用于后续步骤中,API调用时的链接填写
3)在配置页面,有2个配置项,分别为:
report:数据集的来源(相对于reportlets)
dsName:数据集的名称
在这个示例中,我们的配置为:
report= GettingStarter.cpt
dsName = ds1
应用管理:
在应用管理中,记下“测试”应用的应用ID和密钥两个参数,用于后续步骤中,API调用时的鉴权
权限管理:
在权限管理中,选定应用为“测试”;开启基础数据接口分组中,[demo]报表数据集服务。以保证该API可用
3.2 效果预览
链接为:http://localhost:8075/webroot/decision/sp/client/api/ds/data。
ds/data和GET分别为API路径和API方法;将应用ID和密钥写入Headers中。
这里有两种传参方式可用,一种是在Body中写入地区信息:{“地区”:“华北”}
另一种是在Params中,将地区和华北,分别写入KEY和VALUE下。此时在链接后缀,增加参数值?地区=华北
两种方式得到的结果一致,如下图所示:
4. 报表数据服务
本Demo示例展示:对于一些无法通过单个数据集简单取出的数据,可以通过制作成简单的报表的形式,输出数据服务
需用到的接口实例是:[demo]报表数据服务
4.1 配置过程
参考2.1、2.2节,SQL数据服务的配置过程
API管理:
1)在API管理的基础数据接口中,点击[demo]报表数据服务的编辑按钮,进行API信息的配置
2)在基础页面,信息已默认配置好,无需任何操作;此处只需记下API路径和API方法两个参数,用于后续步骤中,API调用时的链接填写
3)在配置页面,有2个配置项,分别为:
report:数据来源的报表路径(相对于reportlets)
tag:数据来源的sheet名
在这个示例中,我们的配置为:
report =开放平台测试.cpt
tag =sheet1
模板下载:
注1:本模板的数据来自FRdemo数据库,您可以自行下载后,直接使用。
注2:本接口不适用于复杂或大数据量模板。
应用管理:
在应用管理中,记下“测试”应用的应用ID和密钥两个参数,用于后续步骤中,API调用时的鉴权
权限管理:
在权限管理中,选定应用为“测试”;开启基础数据接口分组中,[demo]报表数据服务。以保证该API可用
4.2 效果预览
链接为:http://localhost:8075/webroot/decision/sp/client/api/list/report/data。
list/report/data和GET分别为API路径和API方法;将应用ID和密钥写入Headers中。
5. 报表分组数据服务
本Demo示例展示:对于一些无法用单个数据集简单取出的数据,可以通过制作成简单的报表的形式,输出数据服务
需用到的接口实例是:[demo]报表分组数据服务
5.1 配置过程
参考2.1、2.2节,SQL数据服务的配置过程
API管理:
1)在API管理的基础数据接口中,点击[demo]报表分组数据服务的编辑按钮,进行API信息的配置
2)在基础页面,信息已默认配置好,无需任何操作;此处只需记下API路径和API方法两个参数,用于后续步骤中,API调用时的链接填写
3)在配置页面,有2个配置项,分别为:
report:数据来源的报表路径(相对于reportlets)
tag:数据来源的sheet名
在这个示例中,我们的配置为:
report = 开放平台测试.cpt
tag =sheet1
注1:开放平台测试模板,与示例4相同
注2:与报表数据服务相同,本接口不适用于复杂或大数据量模板。
应用管理:
在应用管理中,记下“测试”应用的应用ID和密钥两个参数,用于后续步骤中,API调用时的鉴权
权限管理:
在权限管理中,选定应用为“测试”;开启基础数据接口分组中,[demo]报表分组数据服务。以保证该API可用
5.2 效果预览
链接为:http://localhost:8075/webroot/decision/sp/client/api/group/report/data。
group/report/data和GET分别为API路径和API方法;将应用ID和密钥写入Headers中。
从测试效果图可以看出,本接口与报表数据服务接口,输出的数据内容一致,只是在格式上有所不同。
本接口输出的数据将报表内容,分为了“title”和“items”两部分。使用者可根据自身需求,选用不同的接口。
6. 填报服务
本Demo示例展示:免预览提交数据,提升填报效率
需用到的接口实例是:[demo]填报服务
示例一:单行数据填报
6.1.1 配置过程
参考2.1、2.2节,SQL数据服务的配置过程
API管理:
1)在API管理的基础数据接口中,点击[demo]填报服务的编辑按钮,进行API信息的配置
2)在基础页面,信息已默认配置好,无需任何操作;此处只需记下API路径和API方法两个参数,用于后续步骤中,API调用时的链接填写
3)在配置页面,有1个配置项,
report:数据来源的报表路径(相对于reportlets)
在这个示例中,我们的配置为:
report = 填报示例(单行).cpt
模板下载:
模板中写入a、b、c、d4个参数
应用管理:
在应用管理中,记下“测试”应用的应用ID和密钥两个参数,用于后续步骤中,API调用时的鉴权
权限管理:
在权限管理中,选定应用为“测试”;开启基础数据接口分组中,[demo]填报服务。以保证该API可用
6.1.2 效果预览
链接为:http://localhost:8075/webroot/decision/sp/client/api/write/report/data。
group/report/data和GET分别为API路径和API方法;将应用ID和密钥写入Headers中。
在Params中,给a、b、c、d4个参数赋值。
可以看到数据表中增加了1条填报的数据
示例二:多行数据填报
本示例配合数据工厂数据集插件进行展示,数据工厂数据集插件见:数据工厂数据集
数据工厂数据集插件的作用:可以按照要求的格式写入数据,一次性填报大量内容;减少传统的在前端页面表格中,逐行进行填报的工作量
6.2.1 配置过程
参考2.1、2.2节,SQL数据服务的配置过程
API管理:
1)在API管理的基础数据接口中,点击[demo]填报服务的编辑按钮,进行API信息的配置
2)在基础页面,信息已默认配置好,无需任何操作;此处只需记下API路径和API方法两个参数,用于后续步骤中,API调用时的链接填写
3)在配置页面,有1个配置项,
report:数据来源的报表路径(相对于reportlets)
在这个示例中,我们的配置为:
report = 填报示例.cpt
模板下载:
应用管理:
在应用管理中,记下“测试”应用的应用ID和密钥两个参数,用于后续步骤中,API调用时的鉴权
权限管理:
在权限管理中,选定应用为“测试”;开启基础数据接口分组中,[demo]填报服务。以保证该API可用
6.2.2 效果预览
链接为:http://localhost:8075/webroot/decision/sp/client/api/write/report/data。
group/report/data和GET分别为API路径和API方法;将应用ID和密钥写入Headers中。
在Body中按格式要求,写入需要填报的内容。
可以看到数据表中增加了2条填报的数据
本示例中数据工厂配置的信息如下图:
其中,装载方式为单参数,参数填写为${body},右侧参数body自动填充。此处对应postman中的请求体Body,即传入的参数为body;
参数值按照数据库表中的格式填写即可,在postman的请求体Body中,写入的需要填报的内容,也遵循该格式;
解析方式为json,即将需要填报的内容,通过数据工厂,转化成json格式。此处可根据实际需求,选择对应的解析方式。