当前位置: 首页 > 工具软件 > Saiku > 使用案例 >

saiku前后端交互

舒俊雄
2023-12-01

通过query.js传一个交互ID到后端是,查询ID和cube的MDX到后端OlapQueryService.java执行查询。

提交mdx语句,执行后, 查询结果的获得,访问这个地址:

http://99.999.99.99:8080/saiku/rest/saiku/anonymousUser/query/4FF7D01E-8A6B-5EB4-991B-C0CE680A4BCA/result/flat

这里,需要注意:4FF7D01E-8A6B-5EB4-991B-C0CE680A4BCA是交互的id,

登陆saiku,必须用某个用户身份进去,默认有admin和两个开发人员的身份。每个用户对应唯一的一个身份id,登陆后,用唯一的身份id,进行验证。

而交互id,是在选择cube后,saiku服务器随机生成的一个id字符串,用于交互时,保证唯一性。用浏览器跟踪,发现生成过程就是选中一个cube后。

如果再选另一个cube,重新提交了一个申请,saiku会自动先删除原先的id。然后新建一个id串,作为一个新查询。

手动建立一个页面,与saiku交互,就需要先抓包,调查清楚,几个访问地址,和这个生成的访问id,然后,并结成可访问的url,直接post请求就行了。

一个post请求的基本配置信息为:

window.q1 = new Query({connection:'aso_test_edition',catalog:'aso_sever_schema',schema:'aso_sever_schema',cube:'aso',formatter:'flat',type:'QM'}); 

 

然后q1.save(),直接会去生成id,然后拼接url。

再次提交,会自动删除原有id。建立新id。

 

 类似资料: