接口说明

接口列表

URL Method JSONP V 描述
/login GET, POST OK v1 用户登录接口
/logout GET, POST OK v1 用户退出接口
/json_out GET, POST OK v1 ESQL执行接口
/jsonp_out GET, POST OK v1 /json_out 的副本,只为兼容 esql2.x
/login2 GET, POST OK v2 用户登录接口
/logout2 GET, POST OK v2 用户退出接口
/sql GET, POST OK v2 ESQL执行接口
/file_get GET, POST OK v2 文件获取, 返回结果有些特殊见 备注1

如果接口支持JSONP,并且请求中有 callback 参数,则返回 JSONP

备注1
file_get接口请求成功时,HTTP Response包含文件,Response head有 Content-Disposition; 请求失败时,HTTP Response的 Content-Type 为 “application/json; xxxx” 返回JSON格式和其它接口一致

API各版本返回结果格式说明

v1 (esql2、esql3)

msg 返回信息,正常时返回 success; 异常返回:state[code]: message 格式的字符串
count 返回记录数
result 返回记录集
took 底层数据获取时间(毫秒)
cost 接口调用总的花费时间(毫秒)

v2 (esql3)

code 返回码
state 返回状态
message 返回文字信息 (错误信息等)
count 返回记录数 (同v1)
data 返回记录集 (同v1 的 result)
took 底层数据获取时间(毫秒) (同v1)
cost 接口调用总的花费时间(毫秒) (同v1)

返回码(code)和返回状态(state)列表

CODE STATE 描述
0 Success 成功
10 DataScrollEnd 数据遍历结束
50 DataMaxSizeOverstep 结果集超出长度限制
90 UnknownException 未知异常
100 GrammarException 语法错误
101 IllegalCharacterException (语法错误)非法字符
102 GrammarNotSupport (语法错误)语法不支持
103 GrammarMissing (语法错误)语句不全
200 AclException 授权错误
201 PermissionDenied (授权错误)没有权限
202 AccountNotExists (授权错误)帐号不存在
203 AccountAlreadyExists (授权错误)帐号已存在
204 NotLoggedInOrSessionTimeOut (授权错误)未登录或Session已过期
205 WrongUsernameOrPassword (授权错误)用户名或密码错误
206 RootRemoteAccessNotAllow (授权错误)root远程登录被禁止
207 NotNeedAuth (授权错误)无需认证,系统已开启免认证
208 AccountDeactivated (授权错误)帐号被锁定
300 ElasticException ES异常
301 EsNotFound (ES异常)找不到目标对象
302 EsNotSupport (ES异常)当前版本不支持该特性
303 EsMappingError (ES异常)Mapping定义有误
304 EsMappingClash (ES异常)Mapping和原有定义的冲突
305 EsAlreadyExists (ES异常)要创建的对象已经存在
400 ApiException API调用错误
401 CanNotAccess (API调用错误)接口无法访问
402 ParameterMissing (API调用错误)参数缺失
500 FeatureException 功能特性相关异常
501 FeatureNotAvailable (功能特性相关异常)该功能特性无法正常使用
502 FeatureNotConfigure (功能特性相关异常)该功能特性未配置或未开启
503 FeatureNotSupport (功能特性相关异常)目前还未支持该特性
900 CommonException 公共类异常
901 FileIOError (公共类异常)文件读写错误
902 FileTypeInvalid (公共类异常)无效的文件类型

关于ES异常

ESql调用ES时, 尽量不用 ignore 忽然异常参数, 让 ES 把异常抛上来, ESql会对异常进行判断和处理, 并封装成对外友好的输出