OkayAPI Docs


API Path: /api/Super/Table/FreeTree

API Description: R 可以根据自定义条件获取树状分类的数据,可用于:组织架构、目录分类、网站菜单、级联地址等场景。要求:表单结构中须含有指向父级的ID。当前最多一次性获取两层。

3
API Traffic
HTTP/HTTPS
Protocol
GET/POST
Method
UTF-8
Charset
JSON
Response

API Debug   


API Params

ParameterTypeRequiredDefaultNoteDescription
HTTP_APPKEYStringRequiredMIN: 32Common Put Your APPKEY
uuidStringOptaionMIN: 32;MAX: 32登录用户的UUID,使用此管理员系列接口时,忽略此参数。
tokenStringOptaionMIN: 64;MAX: 64使用此管理员系列接口时,忽略此参数。
model_nameStringRequiredYour table Model Name
admin_uuidStringRequiredMIN: 32;MAX: 32管理员的UUID,需要先在小白开放平台-会员列表-角色设置-角色-管理员,设置用户为管理员,然后传入用户的UUID
admin_tokenStringRequiredMIN: 64;MAX: 64管理员的会话凭证
other_uuidStringOptaionMIN: 32;MAX: 32其他UUID,为避免混淆,当管理员要修改某位会员的数据时,可通过此参数指定修改特定uuid的数据。
parent_fieldStringRequiredparent_id子级存放父级id的字段名称,此字段必须要出现在表单中,为int类型。如果不想使用默认的字段名称parent_field,可以自定义其他字段名称。
parent_idIntRequired0所属父类id的值,顶级分类的父级id值为0。固定对应表单中id字段的值。具体使用请见下方请求示例。
whereArrayJSON FormatOptaion[]可选且安全的where条件,格式为:[["第一个位置表示字段名称(字段必须先存在)","第二个位置表示判断>符号(可以是:>、>=、<、<=、=、<>, LIKE)","第三个位置表示判断值"]]。多个条件逻辑关系为:AND,并且接口会默认加上父级ID的匹配。
where_XStringOptaion动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值。支持的比较符和示例如下:
  • EQ:等于(默认),如:where_year=EQ-2020,或:where_year=2020,表示年份year等于2020;
  • GT:大于,如:where_year=GT-2020,表示年份year大于2020;
  • GE:大于等于,如:where_year=GE-2020,表示年份year大于或等于2020;
  • LT:小于,如:where_year=LT-2020,表示年份year小于2020;
  • LE:大于等于,如:where_year=LE-2020,表示年份year小于或等于2020;
  • NE:不等于,如:where_year=NE-2020,表示年份year不等于2020;
  • LIKE:模糊匹配,如:where_name=LIKE-小白,表示名字name含有小白的;
  • NLIKE:模糊匹配(排除),如:where_name=NLIKE-小白,表示名字name不包含小白的
  • IN:枚举查询,如:where_year=IN-2020,2021,2022,表示年份year在这三个年份,多个值用英文逗号分割
  • NIN:枚举查询(排除),如:where_year=NIN-2020,2021,2022,表示年份year不在这三个年份,多个值用英文逗号分割
如果同一字段有多个条件,使用双竖线||分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先)
selectArraySeperated with ,OptaionSQL语句的SELECT部分,多个字段用英文逗号分割,如:select=id,uuid
orderArrayJSON FormatOptaion[]SQL语句的ORDER部分,格式为:[第一组排序,第二组排序,……],如:order = ["id DESC", "add_time ASC"],表示 id DESC, add_time ASC。特别地,RAND表示随机排序。

API Debug

KEYREQUIREDVALUE
app_key *Required
uuid Option
token Option
model_name *Required
admin_uuid *Required
admin_token *Required
other_uuid Option
parent_field *Required
parent_id *Required
where Option
select Option
order Option

API Response

KEYTypeDescription
err_codeInt状态操作码,0成功;1开发类错误,查询失败(表单不存在或查询错误);2应用层规则拦截,拦截后可以小白开放平台查看日记
err_msgString错误提示信息,err_code非0时参考此提示信息
treeArray树状数据
tree[].idInt固定返回,ID
tree[].{parent_id}Int固定返回,父级ID,字段名由客户端指定
children_treeArray子节点的树状数据,没有时为空数组。表单中不能添加children_tree字段,以免引起冲突。返回字段、过滤条件和排序逻辑和顶层一样。

HTTP Response Code

HTTP Status CodeDescription
Http Status = 200Success
Http Status = 400Illegal-Params
Http Status = 401Illegal-Token
Http Status = 402IP-Banned
Http Status = 404API-NOT-Exsits
Http Status = 406Illegal-APPKEY
Http Status = 407APPKEY-Expired-Out
Http Status = 408APPKEY-Busy
Http Status = 409Illegal-Sign
Http Status = 413API-Traffic-NOT-Enough
Http Status = 415API-LOCKED
Http Status = 500Internal-Server-Error