kylin 使用RESTful API 请求
目前根据Kylin的官方文档介绍,Kylin的认证是basic authentication,加密算法是Base64,在POST的header进行用户认证
我使用的用户和密码是(格式:username:password) :ADMIN:KYLIN 使用Base64编码后结果为:QURNSU46S1lMSU4=
1、在Linux环境下
curl -c cookiefile.txt -X POST -H "Authorization: Basic QURNSU46S1lMSU4="-H 'Content-Type: application/json'http://10.8.217.66:7070/kylin/api/user/authentication
在执行的目录下会生成cookiefile.txt 文件,内容是:

返回结果:
{
"userDetails":{
"password":null,
"username":"ADMIN",
"authorities":[
{
"authority":"ROLE_ADMIN"
},
{
"authority":"ROLE_ANALYST"
},
{
"authority":"ROLE_MODELER"
}
],
"accountNonExpired":true,
"accountNonLocked":true,
"credentialsNonExpired":true,
"enabled":true
}
}
如果登录成功,JSESSIONID将被保存到cookie文件中; 在随后的http请求中,附加cookiefile.txt 文件就可以了,不需要每次都认证,
相当于在浏览器下访问后,留下的cookis信息。 如:
curl -b cookiefile.txt -X PUT -H 'Content-Type: application/json' -d '{"startTime":'1423526400000', "endTime":'1423526400', "buildType":"BUILD"}' http://<host>:<port>/kylin/api/cubes/your_cube/build
您可以在命令中提供用户名/密码选项“用户”; 请注意,这在shell历史中有密码泄露的风险
curl -X PUT --user ADMIN:KYLIN -H "Content-Type: application/json;charset=utf-8" -d '{ "startTime": 820454400000, "endTime": 821318400000, "buildType": "BUILD"}' http://<host>:<port>/kylin/api/cubes/kylin_sales/build
查询项目下的表数据
curl -X POST -H "Authorization: Basic QURNSU46S1lMSU4=" -H "Content-Type: application/json" -d '{ "sql":"select count(*) from TEST_KYLIN_FACT", "project":"learn_kylin" }'http://<host>:<port>/kylin//api/query你可能觉得这个方式不好,写这么多,没有关系,你也可以通过代码实现,使用JDBC访问方式。如果仅仅为了看数据,也可以使用PostMan来看数据。2、POSTMAN 方式查看或者请求首先必须知道你用什么用户名和密码去访问Kylin,所以Header信息必须要带。
Authorization:Basic QURNSU46S1lMSU4=
Content-Type: application/json;charset=UTF-8
1、查看Cube信息
get:http://10.8.217.66:7070/kylin/api/cubes?cubeName=kylin_sales_cube&limit=15&offset=0

2、列出当前项目的表和列

3、SQL 查询语句请求
post:http://10.8.217.66:7070/kylin/api/query
{
"sql":"select * from KYLIN_SALES",
"offset":0,
"limit":50000,
"acceptPartial":false,
"project":"learn_kylin"
}
4、列出所以Cubes信息
get:http://10.8.217.66:7070//kylin/api/cubes
5、GET http://10.8.217.66:7070/kylin/api/cubes/kylin_sales_cube
6、GET http://10.8.217.66:7070/kylin//api/cube_desc/{cubeName}
参考详见:
http://kylin.apache.org/docs20/howto/howto_use_restapi.html#build-cube
http://kylin.apache.org/docs20/howto/howto_build_cube_with_restapi.html
kylin 使用RESTful API 请求的更多相关文章
- Kylin Java RESTful API
最近在做大数据方面的开发, 学习研究了一段时间的kylin系统, 对于前端开发需要使用 RESTful API ,但是官网并没有提供详细的Java API. 经过几天的看文档,最终写出了 Java ...
- httpclient连接池在ES Restful API请求中的应用
package com.wm.utils; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http ...
- 【枚举类型】Restful API请求--转换String为枚举类型
IBaseEnum.java public interface IBaseEnum { public String getName(); } FuncEnum.java import com.sssl ...
- python之restful api(flask)获取数据
需要用到谷歌浏览器的扩展程序 Advanced Rest Client进行模拟请求 1.直接上代码 from flask import Flask from flask import request ...
- SpringBoot实现JWT保护前后端分离RESTful API
通常情况下, 将api直接暴露出来是非常危险的. 每一个api呼叫, 用户都应该附上额外的信息, 以供我们认证和授权. 而JWT是一种既能满足这样需求, 而又简单安全便捷的方法. 前端login获取J ...
- Openstack创建虚拟机 Restful api和RPC调用
Horizon前台界面用于接受用户的输入或动作(action),然后将这些参数构造成RESTful API(https://developer.openstack.org/api-ref/comput ...
- Django编写RESTful API(二):请求和响应
欢迎访问我的个人网站:www.comingnext.cn 前言 在上一篇文章,已经实现了访问指定URL就返回了指定的数据,这也体现了RESTful API的一个理念,每一个URL代表着一个资源.当然我 ...
- 使用WebApiClient请求和管理Restful Api
前言 本篇文章的内容是WebApiClient应用说明篇,如果你没有了解过WebApiClient,可以先阅读以下相关文章: WebApi client 的面向切面编程 我来给.Net设计一款Http ...
- HTTP请求封装:Ajax与RESTful API
一.HTTP请求 HTTP即超文本传输协议,用以进行HTML 文件. 图片文件. 查询结果等的网络传输. 一个完整的HTTP请求包括:请求行.请求头.空行和请求数据(请求数据可以为空) HTTP1.1 ...
随机推荐
- 移动应用滑动屏幕方向判断解决方案,JS判断手势方向
问题分类 滑动屏幕打开相应功能操作. 问题描述 1.用户手动滑动屏幕,根据滑动的方向,打开相应的功能(如:向上滑摇钱树经验明细,向下滑打开任务明细,向左滑打开聚宝盆物品查看等功能),滑动事件捕获问题. ...
- 解析XML出错,无法创建DOMDocument对象
[问题] 加载XML配置文件时,创建DOMDocument对象总是失败,创建代码如下: MSXML2::IXMLDOMDocumentPtr pXMLDoc; MSXML2::IXMLDOMEleme ...
- jquery监测文本框变化
$("#mobile").on('keyup paste blur', function () { var mobile = $(this).val(); ...
- linux性能压测工具
http://benjr.tw/532 http://blog.yufeng.info/archives/2023 https://www.cnblogs.com/zhoujinyi/archive/ ...
- yarn upgrade
更新一个依赖 yarn upgrade 用于更新包到基于规范范围的最新版本 yarn upgrade --latest # 忽略版本规则,升级到最新版本,并且更新 package.json .
- iOS获取当前城市
1.倒入头文件 #import <CoreLocation/CoreLocation.h> 2.实现定位协议CLLocationManagerDelegate 3.定义定位属性 @prop ...
- 【PMP】项目管理ITTO概述
1.项目整合管理
- failed to create process怎么解决
python 在cmd时,报错:failed to create process怎么解决 在cmd命令前加 : python -m 命令(如:python -m conda update conda)
- 图 总结 AI
这个哥们 总结的太好了, 我忍不住就“偷”过来了 人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学. 人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算 ...
- iostat中的util和svctm (Two traps in iostat: %util and svctm)
iostat, from the excellent sysstat suite of utilities, is the go-to tool for evaluating IO performan ...