接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/Create
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.Create
接口描述: 增 在自定义数据表单中添加一个新数据,添加的字段应先在后台进行添加。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
data | 字符串JSON格式 | 可选 | 创建时的初始化数据,需要JSON编码后传递。格式:data={"字段名1":"字段值1","字段名2":"字段值2"...}。数据中的uuid将优先于model_uuid参数。JSON在线解析及格式化验证(data和data_X二选一) | ||
data_X | 字符串 | 可选 | 动态参数,优先于data的JSON数据。可自由传入动态参数,字段名组合格式:data_ + X(X要换成你的字段名) ,例如数据表单标题title字段,组合后为:&data_title=YesApi,等效于:&data={"title":"YesApi"}。可以同时传入多个动态参数,例如:&data_title=YesApi&data_year=2020,比JSON格式更方便(data和data_X二选一) |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(使用data的JSON格式传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.Create&model_name=article&data={"title":"123456"}&app_key={你的app_key}&sign={动态签名}
请求(使用data_X动态参数传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.Create&model_name=article&data_title=123456&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"id": 4
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口(第一个示例:从省份开始选择):
$rs = OkayApiClient::request('App.Table.Create',array('model_name'=>'telephone','data'=>json_encode(array("mobile"=>"13088886666","mobile_status"=>"1"))));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] =>
Array
(
[err_code] => 0
[err_msg] =>
[id] => 6
)
[msg] => 小白开放接口:App.Table.Create
)
*/
#!/usr/bin/python
#coding=utf-8
import requests
import hashlib
# TODO: 请根据需要,换成您的HOST,app_key和app_secrect
API_URL = '你的小白接口域名,例如:http://api.okayapi.com/'
APP_KEY = '你的app_key'
APP_SECRET = '你的app_secrect'
# 生成签名
def Signature(params, key=None, secret=None):
key = key or APP_KEY
secret = secret or APP_SECRET
params.pop('app_secrect', None)
params['app_key'] = key
md5_ctx = hashlib.md5()
md5_ctx.update(''.join([params[value] for value in sorted([key for key in params])]) + secret)
return md5_ctx.hexdigest().upper()
# 调用小白开放接口
def HTTPGet(url, params):
params['sign'] = Signature(params)
resp = requests.get(url, params)
return resp.json()
def main():
# 待请求的接口与相关参数(根据需要,可动态调整请求参数)
params = {
's': 'App.Table.Create',
'model_name': 'okayapi_message',
'data': json.dumps({'message_nickname': 'test', 'message_key': 'aba'})
}
# 发起请求
return HTTPGet(API_URL, params)
pprint.pprint(main())
# {u'data': {u'err_code': 0, u'err_msg': u'', u'id': u'6'},
# u'msg': u'\u5f53\u524d\u5c0f\u767d\u63a5\u53e3\uff1aApp.Table.Create',
# u'ret': 200}
/**
* 准备接口参数
*/
var data = {title:"123456"};
var params = {
s: "App.Table.Create", // 待请求的接口服务名称
name: "article", // 更多接口参数
data: JSON.stringify(data), // 转JSON格式
callback: "onCallback" // 客户端的JS回调函数
};
/**
* 发起JSONP请求
*/
$.ajax({
url: 'http://api.yesapi.cn/', // TODO:你的接口域名
dataType: 'jsonp',
jsonpCallback: params.callback,
cache: true,
data: enryptData(params) // 动态加密
}).done(function (rs) {
console.log("done");
console.log(rs);
});
/**
* TODO: 客户端的JS回调函数
*/
function onCallback(rs) {
console.log("onCallback");
console.log(rs);
alert("果创云开放接口请求完毕,请查看控制台!");
}
/**
* 生成小白接口签名
*/
function enryptData(params) {
// TODO:请改成您的app_key
const OKAYAPI_APP_KEY = "16BD4337FB1D355902E0502AFCBFD4DF";
// TODO:请改成您的app_secrect,请勿对外暴露!!
const OKAYAPI_APP_SECRECT = "4c1402596e4cd017eeaO670df6f8B6783475b4ac8A32B4900f20abP2159711ad";
params['app_key'] = OKAYAPI_APP_KEY;
var sdic = Object.keys(params).sort();
var paramsStrExceptSign = "";
for(ki in sdic){
paramsStrExceptSign += params[sdic[ki]];
}
var sign = md5(paramsStrExceptSign + OKAYAPI_APP_SECRECT).toUpperCase();
params['sign'] = sign;
return params;
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1创建失败(不符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.id | 整型 | 新创建数据的自增ID |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/CheckCreate
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.CheckCreate
接口描述: 增非重复 在自定义数据表单中添加一个【非重复】新数据,添加的字段应先在后台进行添加。即当数据不存在时则创建,当数据已存在时不进行任何操作。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
data | 字符串JSON格式 | 可选 | 创建时的初始化数据,需要JSON编码后传递。格式:data={"字段名1":"字段值1","字段名2":"字段值2"...}。数据中的uuid将优先于model_uuid参数。JSON在线解析及格式化验证(data和data_X二选一) | ||
data_X | 字符串 | 可选 | 动态参数,优先于data的JSON数据。可自由传入动态参数,字段名组合格式:data_ + X(X要换成你的字段名) ,例如数据表单标题title字段,组合后为:&data_title=YesApi,等效于:&data={"title":"YesApi"}。可以同时传入多个动态参数,例如:&data_title=YesApi&data_year=2020,比JSON格式更方便(data和data_X二选一) | ||
check_field | 字符串用,分割 | 必须 | 待检测的字段。注意:data数据中必须包含此字段的数据,用作检测重复的依据。多个检测字段用英文逗号分割。例如:check_field=name,age,表示同时检测名字和年龄。请留意字段类型的相等性判断,如字符串类型的字段不能在data参数中传整型参数。 | ||
model_return_data | 布尔型 | 可选 | false | 是否返回新创建或原来的数据,model_return_data=1 返回,model_return_data=0 不返回 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(使用data的JSON格式传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.CheckCreate&model_name=article&data={"title":"abc","content":"something"}&check_field=title&app_key={你的app_key}&sign={动态签名}
请求(使用data_X动态参数传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.CheckCreate&model_name=article&data_title=abc&data_content=something&check_field=title&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"id": 4
},
"msg": ""
}
如果数据已经存在,则返回:
{
"ret": 200,
"data": {
"err_code": 3,
"err_msg": "数据已存在,不再创建",
"id": 11
}
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.CheckCreate',array('model_name'=>'okayapi_message','data'=>json_encode(array("message_nickname"=>"小白","message_content"=>"加油!")),'check_field'=>'message_nickname'));
// 输出结果
print_r($rs);
//返回:
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[id] => 4
)
[msg] => 小白开放接口:App.Table.CheckCreate
)
//如果数据已经存在,则返回:
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 3
[err_msg] => 数据已存在,不再创建
[id] => 4
)
[msg] => 小白开放接口:App.Table.CheckCreate
)
#!/usr/bin/python
#coding=utf-8
import requests
import hashlib
# TODO: 请根据需要,换成您的HOST,app_key和app_secrect
API_URL = '你的小白接口域名,例如:http://api.okayapi.com/'
APP_KEY = '你的app_key'
APP_SECRET = '你的app_secrect'
# 生成签名
def Signature(params, key=None, secret=None):
key = key or APP_KEY
secret = secret or APP_SECRET
params.pop('app_secrect', None)
params['app_key'] = key
md5_ctx = hashlib.md5()
md5_ctx.update(''.join([params[value] for value in sorted([key for key in params])]) + secret)
return md5_ctx.hexdigest().upper()
# 调用小白开放接口
def HTTPGet(url, params):
params['sign'] = Signature(params)
resp = requests.get(url, params)
return resp.json()
def main():
# 待请求的接口与相关参数(根据需要,可动态调整请求参数)
params = {
's': 'App.Table.CheckCreate',
'model_name': 'okayapi_message',
'data': json.dumps({'message_nickname': 'test', 'message_key': 'nba'}),
'check_field': 'message_key'
}
# 发起请求
return HTTPGet(API_URL, params)
pprint.pprint(main())
# {u'data': {u'err_code': 0, u'err_msg': u'', u'id': u'5'},
# u'msg': u'\u5f53\u524d\u5c0f\u767d\u63a5\u53e3\uff1aApp.Table.CheckCreate',
# u'ret': 200}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1创建失败(不符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3、数据已存在,不再创建 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.id | 整型 | 新创建数据的自增ID/或原来数据的ID |
data.data | 对象 | 新创建或原来的数据,全部字段返回。默认不返回,model_return_data=1 才返回。 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/MultiCheckCreate
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.MultiCheckCreate
接口描述: 批量增非重复 批量操作,在自定义数据表单中添加一个【非重复】新数据,添加的字段应先在小白开放平台进行添加。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
datas | 字符串JSON格式 | 必须 | 批量创建时的初始化数据,注意是数组格式,需要JSON编码后传递。格式:datas=[{"字段名1":"字段值1","字段名2":"字段值2"...}]。数据中的uuid将优先于model_uuid参数。JSON在线解析及格式化验证 | ||
check_field | 字符串用,分割 | 必须 | 待检测的字段。注意:data数据中必须包含此字段的数据,用作检测重复的依据。多个检测字段用英文逗号分割。例如:check_field=name,age,表示同时检测名字和年龄。请留意字段类型的相等性判断,如字符串类型的字段不能在data参数中传整型参数。 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.MultiCheckCreate&model_name=article&datas=[{"title":"aaa"},{"title":"bbb"},{"title":"ccc"}]&check_field=title&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"details": [
{
"id": 1,
"msg": "创建成功",
"data_id": 42,
"create_status": 0
},
{
"id": 2,
"msg": "创建成功",
"data_id": 43,
"create_status": 0
},
{
"id": 3,
"msg": "创建成功",
"data_id": 44,
"create_status": 0
}
]
},
"msg": "V1.3.4 小白开放接口 App.Table.MultiCheckCreate"
}
再次请求:
{你的接口域名}/?s=App.Table.MultiCheckCreate&model_name=article&datas=[{"title":"aaa"},{"title":"123"},{"title":"456"}]&check_field=title&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"details": [
{
"id": 1,
"msg": "数据已存在,不再创建",
"data_id": 42,
"create_status": 2
},
{
"id": 2,
"msg": "创建成功",
"data_id": 45,
"create_status": 0
},
{
"id": 3,
"msg": "创建成功",
"data_id": 46,
"create_status": 0
}
]
},
"msg": "V1.3.4 小白开放接口 App.Table.MultiCheckCreate"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1操作失败,2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.details | 字符串 | 创建的详情 |
data.details[].id | 整型 | 客户端传递参数的序号,从1开始 |
data.details[].create_status | 整型 | 服务端创建非重复数据的状态,0表示创建添加成功,1表示创建失败,2表示数据已存在 |
data.details[].data_id | 整型 | 数据ID,创建成功时是新添加数据的ID,数据存在时是原来数据的ID |
data.details[].msg | 字符串 | 创建时的错误提示信息 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/CheckCreateOrUpdate
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.CheckCreateOrUpdate
接口描述: 增改非重复 在自定义数据表单中尝试添加一个【非重复】新数据,如果数据已经存在,则进行更新操作。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
data | 字符串JSON格式 | 可选 | 创建时的初始化数据,需要JSON编码后传递。格式:data={"字段名1":"字段值1","字段名2":"字段值2"...}。数据中的uuid将优先于model_uuid参数。JSON在线解析及格式化验证(data和data_X二选一) | ||
data_X | 字符串 | 可选 | 动态参数,优先于data的JSON数据。可自由传入动态参数,字段名组合格式:data_ + X(X要换成你的字段名) ,例如数据表单标题title字段,组合后为:&data_title=YesApi,等效于:&data={"title":"YesApi"}。可以同时传入多个动态参数,例如:&data_title=YesApi&data_year=2020,比JSON格式更方便(data和data_X二选一) | ||
check_field | 字符串用,分割 | 必须 | 待检测的字段。注意:data数据中必须包含待检测的全部字段。即check_field可指定data数据中的一个或多个字段。多个检测字段用英文逗号分割。例如:check_field=name,age,表示同时检测名字和年龄。请留意字段类型的相等性判断,如字符串类型的字段不能在data参数中传整型参数。 | ||
logic | 枚举类型 | 可选 | and | 范围:and/or | 多个check_field的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(使用data的JSON格式传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.CheckCreateOrUpdate&model_name=article&data={"title":"abc"}&check_field=title&app_key={你的app_key}&sign={动态签名}
请求(使用data_X动态参数传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.CheckCreateOrUpdate&model_name=article&data_title=abc&check_field=title&app_key={你的app_key}&sign={动态签名}
返回(如果未存在就新建):
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"id": 4,
"op_type": "insert"
},
"msg": ""
}
如果数据已经存在,则返回(存在则更新):
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"id": 4,
"op_type": "update"
},
"msg": ""
}
以下示例演示了多个检测字段使用逻辑或的效果,请求:
{你的接口域名}/?s=App.Table.CheckCreateOrUpdate&model_name=article&data={"title":"abc","view_times":1}&check_field=title,view_times&logic=or
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"id": 52,
"op_type": "update"
},
"msg": "V1.4.2 小白开放接口 App.Table.CheckCreateOrUpdate"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1创建失败(不符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记; |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.id | 整型 | 新创建数据的自增ID/或原来数据的ID |
data.op_type | 字符串 | 本次操作的具体类型,insert为插入,update为更新 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/MultiCheckCreateOrUpdate
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.MultiCheckCreateOrUpdate
接口描述: 批量增改非重复 批量版接口,在自定义数据表单中尝试添加一个【非重复】新数据,如果数据已经存在,则进行更新操作。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
datas | 字符串JSON格式 | 必须 | 需要批量创建的初始化数据,需要JSON编码后传递。格式:datas=[{第一组数据},{第二组数据},{第三组数据……}]。每一组的数据格式:{"字段名1":"字段值1","字段名2":"字段值2"...}。数据中的uuid将优先于model_uuid参数。JSON在线解析及格式化验证 | ||
check_field | 字符串用,分割 | 必须 | 待检测的字段,非批量,全部检测的字段都应一致。注意:datas批量数据每一组数据中必须包含待检测的全部字段。即check_field可指定data数据中的一个或多个字段。多个检测字段用英文逗号分割。例如:check_field=name,age,表示同时检测名字和年龄。请留意字段类型的相等性判断,如字符串类型的字段不能在data参数中传整型参数。 | ||
logic | 枚举类型 | 可选 | and | 范围:and/or | 多个check_field的逻辑组合,非批量,全部检测的字段都应一致。logic=and表示逻辑且,logic=or表示逻辑或 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.MultiCheckCreateOrUpdate&model_name=article&datas=[{"title":"aaa","state":1},{"title":"bbb","state":0}]&check_field=title&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"details": [
{
"op_type": "update",
"id": 42
},
{
"op_type": "update",
"id": 43
}
]
},
"msg": "V1.3.20 小白开放接口 App.Table.MultiCheckCreateOrUpdate"
}
以下是部分参数格式错误的请求示例:
{你的接口域名}/?s=App.Table.MultiCheckCreateOrUpdate&model_name=article&datas=[{"title":"aaa","state":1,"content":"文章内容"},{"title":"bbb"}]&check_field=title,state
返回:
{
"ret": 200,
"data": {
"err_code": 3,
"err_msg": "data参数中,缺少需要检测重复的state字段数据。",
"details": [
{
"op_type": "insert",
"id": "57"
},
{
"op_type": "fail",
"id": 0,
"error": "data参数中,缺少需要检测重复的state字段数据",
"data": {
"title": "bbb"
}
}
]
},
"msg": "V1.3.22 小白开放接口 App.Table.MultiCheckCreateOrUpdate"
}
以下示例演示在批量中使用逻辑或的效果,请求:
{你的接口域名}/?s=App.Table.MultiCheckCreateOrUpdate&model_name=article&datas=[{"title":"aaa","state":1,"content":"文章内容"},{"title":"bbb","state":0}]&check_field=title,state&logic=or
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"details": [
{
"op_type": "update",
"id": 42
},
{
"op_type": "update",
"id": 36
}
]
},
"msg": "V1.4.2 小白开放接口 App.Table.MultiCheckCreateOrUpdate"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1创建失败(不符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3存在部分失败的情况 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.details | 字符串 | 批量的结果 |
data.details[].id | 整型 | 新创建数据的自增ID/或原来数据的ID |
data.details[].op_type | 字符串 | 本次操作的具体类型,insert为插入,update为更新,fail为失败(参数错误) |
data.model_name | 字符串 | 当前表单名称 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/MultiCreate
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.MultiCreate
接口描述: 批量增 批量导入多条新数据,导入完毕后会返回导入的概况
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
datas | 字符串JSON格式 | 必须 | 批量导入的数据。特别注意!这是复数datas,即需要传递是的单个创建时的数组的数组。格式为JSON,即:datas=[单个创建时的数据1, 单个创建时的数据2, ...]。一次最多只允许导入1000条数据。数据中的uuid将优先于model_uuid参数。JSON在线解析及格式化验证 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.MultiCreate&model_name=article&datas=[{"title":"文章标题1"},{"title":"文章标题2"}]&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"total": 2,
"import_num": 2,
"not_import_num": 0,
"details": [
{
"id": 1,
"new_id": 10,
"msg": "导入成功"
},
{
"id": 2,
"new_id": 11,
"msg": "导入成功"
}
]
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.MultiCreate',array('model_name'=>'Price','datas'=>json_encode(array(array('shangpin'=>'草莓','price'=>20),array('shangpin'=>'橘子','price'=>3.5)))));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[total] => 2
[import_num] => 2
[not_import_num] => 0
[details] => Array
(
[0] => Array ( [id] => 1 [msg] => 导入成功 )
[1] => Array ( [id] => 2 [msg] => 导入成功 )
)
)
[msg] => 小白开放接口:App.Table.MultiCreate
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0导入成功;1导入失败(如表不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.total | 整型 | 本次导入的总数量 |
data.import_num | 整型 | 成功导入的数量 |
data.not_import_num | 整型 | 导入失败的数量 |
data.details | 字符串 | 导入过程中的操作纪录 |
data.details[].id | 整型 | 导入的ID,从1开始 |
data.details[].new_id | 整型 | 数据添加成功时的纪录ID,失败时为0 |
data.details[].msg | 字符串 | 导入的结果 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/MultiFastCreate
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.MultiFastCreate
接口描述: 批量增 批量极速导入多条新数据,速度很快但无明细,此接口可用于批量导入数据,适用于数据初始化和还原。同时,值得注意的是,此接口因为接近原始的数据导入,因此可以设置小白系统字段:id(不提供时为自增主键)、uuid(用户登录时则自动绑定登录用户)、add_time(不提供时为当前创建时间)、update_time、ext_data。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
datas | 字符串JSON格式 | 必须 | 批量导入的数据。特别注意!这是复数datas,即需要传递是的单个创建时的数组的数组。格式为JSON,即:datas=[单个创建时的数据1, 单个创建时的数据2, ...]。一次最多只允许导入1000条数据。 | ||
is_ignore | 布尔型 | 可选 | true | 是否启用IGNORE,1是0否,其中:
|
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0导入成功;1导入失败(如表不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.total | 整型 | 本次导入的总数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/MultiFastCreateExt
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.MultiFastCreateExt
接口描述: 批量增 批量极速导入多条新数据[二分法递归增强版],此接口的区别在于,若批量创建的数据失败,则会进行对半拆分分别重试创建,从而最大可能导入数据,最大重试深度为4级。其他功能请参见:批量极速创建新数据接口。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
datas | 字符串JSON格式 | 必须 | 批量导入的数据。特别注意!这是复数datas,即需要传递是的单个创建时的数组的数组。格式为JSON,即:datas=[单个创建时的数据1, 单个创建时的数据2, ...]。一次最多只允许导入1000条数据。若批量创建的数据失败,则会进行对半拆分分别重试创建,从而最大可能导入数据,最大重试深度为4级。 | ||
is_ignore | 布尔型 | 可选 | true | 是否启用IGNORE,1是0否,其中:
|
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
以下示例将会演示小白接口如何进行二分法递归创建。对于文章表单:article,需要创建以下三组数据:
title1=aaa(注:字段名错误)
title=bbb
title2=ccc(注:字段名错误)
请求:
{你的接口域名}/?s=App.Table.MultiFastCreateExt&model_name=article&datas=[{"title1":"aaa"},{"title":"bbb"},{"title2":"ccc"}]&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"total": 1
},
"msg": "V1.3.12 小白开放接口 App.Table.MultiFastCreateExt"
}
从接口结果可以看到成功创建1组数据,而不是全部失败。
背后的二分法递归创建流程是:
+ 第1次,全部批量创建{"title1":"aaa"},{"title":"bbb"},{"title2":"ccc"},但失败(title1和title2字段非法)。
+ 第2次,批量创建{"title1":"aaa"},{"title":"bbb"},但失败(title1字段非法)。
+ 第3次,批量创建{"title1":"aaa"},但失败(title1字段非法)。
+ 第4次,批量创建{"title":"bbb"},成功。
+ 第5次,批量创建{"title2":"ccc"},但失败(title2字段非法)。
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0导入成功;1导入失败(如表不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.total | 整型 | 本次导入的总数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/Update
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.Update
接口描述: 改 根据ID,更新自定义数据表单中的数据,更新的字段需要先存在。对系统保留表字段(id, uuid, add_time, update_time, ext_data)的更新将会被忽略。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
id | 整型 | 必须 | 最小:1 | 数据ID,例如:1,2,3,…… | |
data | 字符串JSON格式 | 可选 | 待更新的数据,需要JSON编码后传递。格式:data={"字段名1":"字段值1","字段名2":"字段值2"...}。JSON在线解析及格式化验证(data和data_X二选一) | ||
data_X | 字符串 | 可选 | 动态参数,优先于data的JSON数据。可自由传入动态参数,字段名组合格式:data_ + X(X要换成你的字段名) ,例如数据表单标题title字段,组合后为:&data_title=YesApi,等效于:&data={"title":"YesApi"}。可以同时传入多个动态参数,例如:&data_title=YesApi&data_year=2020,比JSON格式更方便(data和data_X二选一) |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(使用data的JSON格式传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.Update&model_name=article&id=5&data={"state":2}&app_key={你的app_key}&sign={动态签名}
请求(使用data_X动态参数传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.Update&model_name=article&id=5&data_state=2&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": ""
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.Update',array('model_name'=>'Price','id'=>'7','data'=>json_encode(array('shangpin'=>'橙子','price'=>'6'))));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
)
[msg] => 小白开放接口:App.Table.Update
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,更新失败(不符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3更新失败(数据已删除或不存在) |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/MultiUpdate
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.MultiUpdate
接口描述: 批量改 根据多个ID,批量更新自定义数据表单中的数据,更新的字段需要先存在。对系统保留表字段(id, uuid, add_time, update_time, ext_data)的更新将会被忽略。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
ids | ids | 必须 | 最大:500 | 多个ID,使用英文逗号分割,例如:ids=1,2,3 | |
data | 字符串JSON格式 | 可选 | 待更新的数据,需要JSON编码后传递。格式:data={"字段名1":"字段值1","字段名2":"字段值2"...}。JSON在线解析及格式化验证(data和data_X二选一) | ||
data_X | 字符串 | 可选 | 动态参数,优先于data的JSON数据。可自由传入动态参数,字段名组合格式:data_ + X(X要换成你的字段名) ,例如数据表单标题title字段,组合后为:&data_title=YesApi,等效于:&data={"title":"YesApi"}。可以同时传入多个动态参数,例如:&data_title=YesApi&data_year=2020,比JSON格式更方便(data和data_X二选一) |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.MultiUpdate&model_name=article&ids=36,37&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"update_total": 2
},
"msg": "小白开放接口:App.Table.MultiUpdate"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,更新失败(不符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3更新失败(数据已删除或不存在) |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.update_total | 整型 | 成功更新的数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeUpdate
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeUpdate
接口描述: 改批量 功能更强大的更新操作,可以根据自定义的多个条件(AND或者OR),更新指定的数据。为防止误更新全表数据,必须至少有一个有效条件。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
data | 字符串JSON格式 | 可选 | 待更新的数据,需要JSON编码后传递。格式:data={"字段名1":"字段值1","字段名2":"字段值2"...}。JSON在线解析及格式化验证(data和data_X二选一) | ||
data_X | 字符串 | 可选 | 动态参数,优先于data的JSON数据。可自由传入动态参数,字段名组合格式:data_ + X(X要换成你的字段名) ,例如数据表单标题title字段,组合后为:&data_title=YesApi,等效于:&data={"title":"YesApi"}。可以同时传入多个动态参数,例如:&data_title=YesApi&data_year=2020,比JSON格式更方便(data和data_X二选一) |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(使用data的JSON格式传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.FreeUpdate&model_name=article&where=[["title","=","123456"]]&data={"title":"654321"}&app_key={你的app_key}&sign={动态签名}
请求(使用data_X动态参数传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.FreeUpdate&model_name=article&where_title=123456&data_title=654321&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"update_rows": 1
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeUpdate',array('model_name'=>'Price','where'=>json_encode(array(array("shangpin","LIKE","%葡萄%"))),'data'=>json_encode(array('price'=>'6'))));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[update_rows] => 2
)
[msg] => 小白开放接口:App.Table.FreeUpdate
)
*/
#!/usr/bin/python
#coding=utf-8
import requests
import hashlib
# TODO: 请根据需要,换成您的HOST,app_key和app_secrect
API_URL = '你的小白接口域名,例如:http://api.okayapi.com/'
APP_KEY = '你的app_key'
APP_SECRET = '你的app_secrect'
# 生成签名
def Signature(params, key=None, secret=None):
key = key or APP_KEY
secret = secret or APP_SECRET
params.pop('app_secrect', None)
params['app_key'] = key
md5_ctx = hashlib.md5()
md5_ctx.update(''.join([params[value] for value in sorted([key for key in params])]) + secret)
return md5_ctx.hexdigest().upper()
# 调用小白开放接口
def HTTPGet(url, params):
params['sign'] = Signature(params)
resp = requests.get(url, params)
return resp.json()
def main():
# 待请求的接口与相关参数(根据需要,可动态调整请求参数)
params = {
's': 'App.Table.FreeUpdate',
'model_name': 'okayapi_message',
'where': json.dumps([['message_key', '=', 'aba']]),
'data': json.dumps({'message_content': 'after_update'})
}
# 发起请求
return HTTPGet(API_URL, params)
pprint.pprint(main())
# {u'data': {u'err_code': 0, u'err_msg': u'', u'update_rows': 2},
# u'msg': u'\u5f53\u524d\u5c0f\u767d\u63a5\u53e3\uff1aApp.Table.FreeUpdate',
# u'ret': 200}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,更新失败(不符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记,3无数据更新 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.update_rows | 整型 | 更新的行数,0表示无任何更新 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/Get
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.Get
接口描述: 查 根据ID,获取自定义数据表单中的数据
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
id | 整型 | 必须 | 最小:1 | 数据ID,例如:1,2,3,…… |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.Get&model_name=article&id=1&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"data": {
"id": 1,
"uuid": "",
"add_time": "2017-11-23 23:35:13",
"update_time": "2018-06-27 22:27:18",
"ext_data": null,
"title": "PHP程序员历险记",
"content": "PHP<a>test</a>(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。PHP<a>test</a>(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。PHP<a>test</a>(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。",
"post_time": "1970-01-01 00:00:00",
"view_times": "5",
"state": "1"
}
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.Get', array('model_name'=>'telephone','id'=>3));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] =>
Array
(
[err_code] => 0
[err_msg] =>
[data] =>
Array
(
[id] => 3
[uuid] =>
[add_time] => 2019-02-02 22:49:39
[update_time] =>
[ext_data] =>
[mobile] => 13902928166
[mobile_status] => 1
)
)
[msg] => 小白开放接口:App.Table.Get
)
*/
#!/usr/bin/python
#coding=utf-8
import requests
import hashlib
# TODO: 请根据需要,换成您的HOST,app_key和app_secrect
API_URL = '你的小白接口域名,例如:http://api.okayapi.com/'
APP_KEY = '你的app_key'
APP_SECRET = '你的app_secrect'
# 生成签名
def Signature(params, key=None, secret=None):
key = key or APP_KEY
secret = secret or APP_SECRET
params.pop('app_secrect', None)
params['app_key'] = key
md5_ctx = hashlib.md5()
md5_ctx.update(''.join([params[value] for value in sorted([key for key in params])]) + secret)
return md5_ctx.hexdigest().upper()
# 调用小白开放接口
def HTTPGet(url, params):
params['sign'] = Signature(params)
resp = requests.get(url, params)
return resp.json()
def main():
# 待请求的接口与相关参数
params = {'s': 'App.Table.Get', 'model_name': 'okayapi_message', 'id' : '1'}
# 发起请求
return HTTPGet(API_URL, params)
print(main())
#{u'msg': u'\u5f53\u524d\u5c0f\u767d\u63a5\u53e3\uff1aApp.Table.Get', u'data': {u'data': {u'update_time': u'2019-01-26 23:34:28', u'uuid': u'', u'ext_data': None, u'message_content': u'<p>\u8fd9\u662f\u4e00\u6761\u8bc4\u8bba\u4fe1\u606f</p>', u'message_post_time': u'2018-11-09 14:18:04', u'message_nickname': u'dogstar', u'id': 1, u'add_time': u'2018-11-09 14:18:04'}, u'err_msg': u'', u'err_code': 0}, u'ret': 200}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3获取失败(数据已删除或不存在) |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.data | 对象 | 获取的数据,并返回全部字段的数据 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/GetDocx
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.GetDocx
接口描述: 查 根据ID,获取自定义数据表单中的数据,并生成可直接下载的word文档。HTML内容将会被作为普通文本序列化输出。注意,仅当成功时才可下载word文档,失败时依然以接口JSON结果返回。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
id | 整型 | 必须 | 最小:1 | 数据ID,例如:1,2,3,…… | |
title | 字符串 | 可选 | word文档标题及文件名 | ||
tpl | 字符串 | 可选 | word文档的模板,表单字段点位符为:{{字段名}} 。例如:ID为 {{id}} ,更新时间为{{update_time}} ,创建时间{{add_time}} ,特别地,换行为{{\n}} 。未设置模板时,默认显示全部字段,一行一个字段 | ||
font_style | 字符串JSON格式 | 可选 | {"name":"Arial"} | word文档的格式设置,JSON格式,示例:{"name": "Microsoft Yahei UI", "size": 20, "color": "#ff6600", "bold": true} 格式配置:
|
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功,注意,仅当成功时才可下载word文档,失败时依然以接口JSON结果返回。;1开发类错误,获取失败(符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3获取失败(数据已删除或不存在) |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/MultiGet
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.MultiGet
接口描述: 批量查 根据批量ID,批量获取自定义数据表单中的数据
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
ids | ids | 必须 | 最大:500 | 多个ID,使用英文逗号分割,例如:ids=1,2,3 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.MultiGet&model_name=article&ids=36,37&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"list": [
{
"id": 36,
"uuid": "",
"add_time": "2019-04-06 17:25:13",
"update_time": "2019-05-01 20:49:53",
"ext_data": null,
"title": "PHP程序员历险记223",
"content": "<p><em>PHP</em>(外文名:<em>PHP</em>: Hypertext Preprocessor,中文名:“超文本预处理器”)</p>",
"post_time": "2020-07-29 06:30:00",
"view_times": "0",
"state": "0",
"test_time": "2019-04-06 17:25:13",
"zhaiyao": ""
},
{
"id": 37,
"uuid": "",
"add_time": "2019-06-07 10:00:23",
"update_time": null,
"ext_data": null,
"title": "来吧~",
"content": null,
"post_time": "1970-01-01 00:00:00",
"view_times": "0",
"state": "0",
"test_time": "2019-06-07 10:00:23",
"zhaiyao": "来吧~"
}
]
},
"msg": "小白开放接口:App.Table.MultiGet"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(符合表字段要求,或表字段不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.list | 字符串 | 获取的数据,没有任何数据时为空数组,如果未找到ID对应的数据则没有任何元素 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/Delete
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.Delete
接口描述: 删 根据ID,删除自定义数据表单中的数据
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
id | 整型 | 必须 | 最小:1 | 数据ID,例如:1,2,3,…… |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.Delete&model_name=article&id=4&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": ""
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口(第一个示例:从省份开始选择):
$rs = OkayApiClient::request('App.Table.Delete',array('model_name'=>'telephone','id'=>6));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] =>
Array
(
[err_code] => 0
[err_msg] =>
)
[msg] => 小白开放接口:App.Table.Delete
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功删除;1开发类错误,删除失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/MultiDelete
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.MultiDelete
接口描述: 批量删 根据多个ID,批量删除自定义数据表单中的数据
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
ids | ids | 必须 | 最大:500 | 多个ID,使用英文逗号分割,例如:ids=1,2,3 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.MultiDelete&model_name=article&ids=36,37&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": ""
},
"msg": "小白开放接口:App.Table.MultiDelete"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功删除;1开发类错误,删除失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/Count
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.Count
接口描述: 查统计 获取自定义数据表单中数据的总条目数量
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.Count&model_name=article&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"total": 2
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.Count', array('model_name'=>'telephone'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] =>
Array
(
[err_code] => 0
[err_msg] =>
[total] => 2
)
[msg] => 小白开放接口:App.Table.Count
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.total | 整型 | 数据的总条目数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeAF
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeAF
接口描述: 查统计 表单分组查询接口,可以根据自定义的多个条件(AND或者OR),进行GROUP聚合操作运算
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
op_fun | 枚举类型 | 必须 | SUM | 范围:SUM/COUNT/MIN/MAX/AVG | 聚合函数操作 |
op_field | 字符串 | 必须 | 进行聚合的字段名称,例如:SUM(price)中的price价格字段 | ||
group_filed | 字符串用,分割 | 必须 | 分组字段,多个分组字段使用英文逗号分割,相当于:GROUP BY {group_filed} | ||
sort_type | 整型 | 可选 | 1 | 排序的类型:1是聚合结果升序(默认);2是聚合结果逆序;3是分组字段升序;4是分组字段降序 | |
page | 整型 | 可选 | 1 | 最小:1 | 第几页 |
top_num | 整型 | 可选 | 10 | 最小:1;最大:500 | 返回结果的数量,前面多少条 |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
select_more | 字符串用,分割 | 可选 | 需要选择的更多字段,默认已经固定返回{groupField}参数字段和聚合结果这两个字段。多个字段用英文逗号分割,如:select_more=id,uuid。如果需要再进行聚合运算,可以类似这样:select_more=id@MIN,uuid。即:字段@聚合运算。聚合运算主要有:SUM/COUNT/MIN/MAX/AVG。id@MIN 对应返回的字段名是 id_AT_MIN,name@COUNT 对应返回字段是 name_AT_COUNT,依次类似。即对应字段格式是:字段_AT_聚合运算。 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeAF&model_name=article&op_fun=SUM&op_field=view_times&group_filed=title&where=[["id",">",0]]&app_key={你的app_key}&sign={动态签名}
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeAF&model_name=article&op_fun=SUM&op_field=view_times&group_filed=title&where_id=GT-0&app_key={你的app_key}&sign={动态签名}
上面查询相当于,SELECT title, SUM(view_times) AS total_num FROM article WHERE id > 0 GROUP BY title ORDER BY total_num ASC LIMIT 0,10
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"items": [
{
"title": "这是一篇文章标题",
"total_num": "100"
},
{
"title": "这又是另一篇文章标题",
"total_num": "200"
},
// 略……
],
"total": 12
},
"msg": ""
}
示例2-附加更多选择字段select_more:
请求:
{你的接口域名}/?s=App.Table.FreeAF&model_name=article&op_fun=SUM&op_field=view_times&group_filed=title&where=[["id",">",0]]&select_more=post_time,state@COUNT&app_key={你的app_key}&sign={动态签名}
上面查询相当于:SELECT post_time, COUNT(state) AS state_AT_COUNT, title, SUM(view_times) AS total_num FROM pa_article_tbl WHERE AND (id > 0) GROUP BY title ORDER BY total_num ASC LIMIT 0,10
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"items": [
{
"post_time": "1970-01-01 00:00:00", // 对应参数:select_more=post_time
"state_AT_COUNT": "1", // 对应参数:select_more=state@COUNT
"title": "这是一篇文章标题",
"total_num": "100"
},
{
"post_time": "1970-01-01 00:00:00",
"state_AT_COUNT": "1",
"title": "这又是另一篇文章标题",
"total_num": "200"
},
// 略……
],
"total": 22
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口(第一个示例:从省份开始选择):
$rs = OkayApiClient::request('App.Table.FreeAF',array('model_name'=>'Price','op_fun'=>'SUM','op_field'=>'price','group_filed'=>'shangpin','where'=>json_encode(array(array("id",">","0")))));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[items] => Array
(
[0] => Array ( [shangpin] => 橘子 [total_num] => 5 )
[1] => Array ( [shangpin] => 苹果 [total_num] => 18 )
[2] => Array ( [shangpin] => 葡萄 [total_num] => 30 )
)
)
[msg] => 小白开放接口:App.Table.FreeAF
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.items | 字符串 | 聚合运算的结果 |
data.items[].XXX | 字符串 | 分组字段,由客户端传入的字段而定 |
data.items[].total_num | 字符串 | 聚合运算的结果(固定为:total_num) |
data.total | 整型 | 分组的总条数 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeCount
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeCount
接口描述: 查统计 可以根据自定义的多个条件(AND或者OR),获取总数
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
count_by | 字符串 | 可选 | 需要非重复计数的字段,默认统计全部行数,若传字段则按些字段的非重复数据进行统计,相当于:COUNT(DISTINCT {count_by})。 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"total": 3
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeCount', array('model_name'=>'Price','where'=>json_encode(array(array("shangpin","LIKE","%葡萄%"),array("shangpin","=","苹果"))),'logic'=>'or'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[total] => 4
)
[msg] => 小白开放接口:App.Table.FreeCount
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.total | 整型 | 数据的总条目数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeExport
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeExport
接口描述: 查 可以根据自定义的多个条件(AND或者OR),进行数据导出。成功导出时,此接口会直接生成可供下载的txt或csv文件。个人免费版最多导出5000条,VIP版最多可导出1万条,SVIP版最多可导出15万条。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
select | 字符串用,分割 | 可选 | SQL语句的SELECT部分,多个字段用英文逗号分割,如:select=id,uuid | ||
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
order | 字符串JSON格式 | 可选 | [] | SQL语句的ORDER部分,JSON格式。具体格式为:[第一组排序,第二组排序,……],如:order = ["id DESC", "add_time ASC"],表示 id DESC, add_time ASC。特别地,RAND表示随机排序,请慎用。 | |
file_type | 枚举类型 | 可选 | txt | 范围:csv/txt/excel | 下载文件的类型,txt或csv或excel。 |
sep | 字符串 | 可选 | , | 数据分割符,@TAB则表示水平制表符。 | |
encoding | 枚举类型 | 可选 | UTF-8 | 范围:UTF-8/GB2312 | 导出的CSV/TXT/Excel文件编码,如果需要ANSI格式可使用encoding=GB2312。 |
page | 整型 | 可选 | 1 | 最小:1 | 第几页 |
perpage | 整型 | 可选 | 1000 | 最小:0;最大:150000 | 分页数量 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,查询失败(表单不存在或查询错误);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeQuery
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeQuery
接口描述: 查 分页获取列表数据或全部数据,支持字段选择、排序、条件查询,功能强大,是最为常用的数据接口。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
select | 字符串用,分割 | 可选 | SQL语句的SELECT部分,多个字段用英文逗号分割,如:select=id,uuid | ||
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
order | 字符串JSON格式 | 可选 | [] | SQL语句的ORDER部分,JSON格式。具体格式为:[第一组排序,第二组排序,……],可以单个或组合排序。 每一组排序格式为:"字段名 + 空格 + ASC|DESC",其中:
例2:组合排序,order=["id DESC", "add_time ASC"],表示id DESC, add_time ASC,即先按ID从大到小,再按创建时间倒序排序。 特别地,RAND表示随机排序,请慎用。 | |
page | 整型 | 可选 | 1 | 最小:1 | 第几页 |
perpage | 整型 | 可选 | 10 | 最小:1;最大:10000 | 分页数量 |
is_real_total | 布尔型 | 可选 | true | 是否需要真正的总数,1是0否,当表单数据过多时,如果不需要查询真正的总数,将能极大提升接口响应的速度。若为假总数,固定返回9999999。 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeQuery&model_name=article&select=id,title,view_times&where=[["id", ">", "36"]]&order=["view_times DESC"]
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeQuery&model_name=article&select=id,title,view_times&where_id=GT-36&order=["view_times DESC"]
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"total": 2,
"list": [
{
"id": 37,
"title": "小白开放平台更新公告",
"view_times": 300
},
{
"id": 38,
"title": "新接口上线通知",
"view_times": 260
}
],
"page": 1,
"perpage": 10
},
"msg": "小白开放接口:App.Table.FreeQuery"
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeQuery',array('model_name'=>'telephone','where'=>json_encode(array(array("id","<","3"),))));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[total] => 2
[list] => Array
(
[0] => Array
(
[id] => 1
[uuid] =>
[add_time] => 2019-02-02 22:49:18
[update_time] =>
[ext_data] =>
[mobile] => 13902985399
[mobile_status] => 1
)
[1] => Array
(
[id] => 2
[uuid] =>
[add_time] => 2019-02-02 22:49:39
[update_time] =>
[ext_data] =>
[mobile] => 13902928176
[mobile_status] => 1
)
)
)
[msg] => 小白开放接口:App.Table.FreeQuery
)
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,查询失败(表单不存在或查询错误);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.total | 整型 | 数据的总条目数量 |
data.list | 字符串 | 查询的结果列表数据 |
data.page | 整型 | 当前第几页 |
data.perpage | 整型 | 当前分页数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeLeftJoinQuery
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeLeftJoinQuery
接口描述: 查关联 有一定复杂度,但可实现功能强大的关联查询,以便实现同时获取两个表单的数据。根据自定义的多个条件(AND或者OR),进行搜索和查询,支持左关联查询,目前只支持关联一个表查询。可以通过文档示例增强对引接口的理解和使用,如有问题,请及时咨询技术客服。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
join_model_name | 字符串 | 必须 | 需要关联的表单名称,目前只支持关联一个表 | ||
select | 字符串用,分割 | 可选 | 针对主表的SQL语句的SELECT部分,多个字段用英文逗号分割,如:select=id,uuid。 | ||
join_select | 字符串用,分割 | 必须 | 最小:1 | 针对关联表的SQL语句的SELECT部分,至少需要指定获取一个字段,多个字段用英文逗号分割,如:select=id,uuid。注意:为避免字段名称冲突,关联表字段在接口返回的结果中的名称为:{关联表单名称}_{关联字段名称}。 | |
on | 字符串JSON格式 | 必须 | [] | 用于指定表单关联关系的ON部分,JSON格式,key-value对,key为主表字段名,value为关联表字段名,支持多组。例如:model_name.name = join_model_name.name AND model_name.age = join_model_name.other_age,则接口传递参数为:on={"name":"name","age":"other_age"} | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
order | 字符串JSON格式 | 可选 | [] | 针对主表的SQL语句的ORDER部分,JSON格式。具体格式为:[第一组排序,第二组排序,……],可以单个或组合排序。 每一组排序格式为:"字段名 + 空格 + ASC|DESC",其中:
例2:组合排序,order=["id DESC", "add_time ASC"],表示id DESC, add_time ASC,即先按ID从大到小,再按创建时间倒序排序。 特别地,RAND表示随机排序,请慎用。 | |
page | 整型 | 可选 | 1 | 最小:1 | 第几页 |
perpage | 整型 | 可选 | 10 | 最小:1;最大:10000 | 分页数量 |
is_real_total | 布尔型 | 可选 | true | 是否需要真正的总数,1是0否,当表单数据过多时,如果不需要查询真正的总数,将能极大提升接口响应的速度。若为假总数,固定返回9999999。 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
假设,当前有两个表单,分别是:文章内容表单(article)、文章分类表单(category),其中:
文章内容表单(article)数据如下:
+----+----------------------+----------------------------------------------------------------+------------+---------+
| id | title | content | view_times | cate_id |
+----+----------------------+----------------------------------------------------------------+------------+---------+
| 36 | PHP程序员历险记223 | <p>PHP(中文名:“超文本预处理器”)是一种通用开源脚本语言。</p> | 200 | 3 |
| 37 | 小白开放平台更新公告 | <p>1.推出四大优惠券 2.新增#修改会员分组#接口</p> | 300 | 1 |
| 38 | 我改了标题 | <p>创建或更新非重复新数据接口</p> | 260 | 2 |
| 39 | 标签 | <p>我爱你,中国</p> | 100 | 0 |
+----+----------------------+----------------------------------------------------------------+------------+---------+
4 rows in set
文章分类表单(category)数据如下:
+----+-----------+---------+
| id | cate_name | is_show |
+----+-----------+---------+
| 1 | 大数据 | 0 |
| 2 | 人工智能 | 1 |
| 3 | 编程开发 | 1 |
+----+-----------+---------+
3 rows in set
并且,article.cate_id字段表示分类ID。那么,下面将演示如何进行关联查询。
【关联查询示例1】查询文章内容id = 36的文章信息以及关联的分类信息。
请求:
{你的接口域名}/?s=App.Table.FreeLeftJoinQuery&model_name=article&join_model_name=category&select=id,title,content,view_times,cate_id&join_select=cate_name&on={"cate_id":"id"}&logic=and&where=[["id", "=", "36"]]&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"total": 1,
"list": [
{
"id": 36,
"title": "PHP程序员历险记223",
"content": "<p>PHP(中文名:“超文本预处理器”)是一种通用开源脚本语言。</p>",
"view_times": 200,
"cate_id": 3,
"category_cate_name": "编程开发"
}
],
"page": 1,
"perpage": 10
},
"msg": "V1.2.28 小白开放接口 App.Table.FreeLeftJoinQuery"
}
【关联查询示例2】查询访问量大于等于100且分类为显示的文章数据。
需要注意,where参数的三元组写法(如上面示例1)默认全部作用于主表单。如果需要对关联表单进行条件判断,需要改用MySQL条件字符串。同时约定:主表单别名为TL(表示Table Left)、关联表单别名为TR(表示Table Right)。下面示例将进行演示。
请求:
{你的接口域名}/?s=App.Table.FreeLeftJoinQuery&model_name=article&join_model_name=category&select=id,title,content,view_times,cate_id&join_select=cate_name&on={"cate_id":"id"}&logic=and&where=["TL.view_times >= 100", "TR.is_show = 1"]&page=1&perpage=10&order=["id ASC", "TR.cate_name DESC"]&app_key={你的app_key}&sign={动态签名}
请求(如果使用where_TL_X / where_TR_X 的写法,默认以TL为主):
{你的接口域名}/?s=App.Table.FreeLeftJoinQuery&model_name=article&join_model_name=category&select=id,title,content,view_times,cate_id&join_select=cate_name&on={"cate_id":"id"}&logic=and&where_TL_view_times=GE-100&where_TR_is_show=1&page=1&perpage=10&order=["id ASC", "TR.cate_name DESC"]&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"total": 2,
"list": [
{
"id": 36,
"title": "PHP程序员历险记223",
"content": "<p>PHP(中文名:“超文本预处理器”)是一种通用开源脚本语言。</p>",
"view_times": 200,
"cate_id": 3,
"category_cate_name": "编程开发"
},
{
"id": 38,
"title": "我改了标题",
"content": "<p>创建或更新非重复新数据接口</p>",
"view_times": 260,
"cate_id": 2,
"category_cate_name": "人工智能"
}
],
"page": 1,
"perpage": 10
},
"msg": "V1.2.28 小白开放接口 App.Table.FreeLeftJoinQuery"
}
如果需要对关联表单的字段进行排序,可以添加前缀【TR.】。
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,查询失败(表单不存在或查询错误);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.total | 整型 | 数据的总条目数量 |
data.list | 字符串 | 查询的结果列表数据 |
data.page | 整型 | 当前第几页 |
data.perpage | 整型 | 当前分页数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/ChangeNumber
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.ChangeNumber
接口描述: 改 根据ID,修改某个字段的数值,可增加或可减少。通过在服务端进行数值的叠加,尽量保持并发下的数据一致性。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
id | 整型 | 必须 | 最小:1 | 数据ID | |
change_field | 字符串 | 必须 | 待修改数值的字段名 | ||
change_value | 字符串 | 必须 | 待叠加的数值,正数表示相加,负数表示相减,需要传递有效数值 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.ChangeNumber&model_name=article&id=8&change_field=view_times&change_value=1&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"change_value": "1",
"after_value": "5"
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.ChangeNumber', array('model_name' => 'telephone','id'=>3,'change_field'=>'mobile','change_value'=>'10'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] =>
Array
(
[err_code] => 0
[err_msg] =>
[change_value] => 10
[after_value] => 13902928176
)
[msg] => 小白开放接口:App.Table.ChangeNumber
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,修改失败(表单不存在或字段类型不是数值类型);2应用层规则拦截,拦截后可以小白开放平台查看日记;3数据不存在或已被删除 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.change_value | 字符串 | 回传客户端本次待更改的数值 |
data.after_value | 字符串 | 本次更新后,最新的字段值 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeChangeNumber
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeChangeNumber
接口描述: 改 可以根据自定义的多个条件(AND或者OR),修改某个或多个字段的数值,可增加或可减少。通过在服务端进行数值的叠加,尽量保持并发下的数据一致性。注意,此接口可更新多条数据。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
change_field | 字符串用,分割 | 必须 | 待修改数值的字段名,多个字段名用英文逗号分割。change_value和change_field分割后的数量应当相同。 | ||
change_value | 字符串用,分割 | 必须 | 待叠加的数值,正数表示相加,负数表示相减,需要传递有效数值。多个数值用英文逗号分割。change_value和change_field分割后的数量应当相同。 | ||
try_add_data | 字符串JSON格式 | 可选 | 当无更新时尝试创建的数据,仅当无更新且有传此参数时才会进行数据创建。此参数可用于初始化等操作。此参数只用于初始化,不会再进行change_value的修改。 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.FreeChangeNumber&model_name=article&where=[["id","=",8]]&change_field=view_times&change_value=1&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"change_value": "1",
"update_rows": 1
},
"msg": ""
}
如果想希望在更新失败时进行数据创建,可以使用try_add_data参数,从而减少多一次接口请求,以完成数据初始化操作。登录,请求:
{你的接口域名}/?s=App.Table.FreeChangeNumber&model_name=article&logic=and&where=[["id", "=", "404"]]&change_field=view_times&change_value=2&try_add_data={"view_times":1}&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"change_value": "1",
"update_rows": 1
},
"msg": "V1.3.16 小白开放接口 App.Table.FreeChangeNumber"
}
这里接口结果返回的change_value对应本次try_add_data里面的初始化值。
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeChangeNumber', array('model_name'=>'Price','where'=>json_encode(array(array("shangpin","LIKE","%葡萄%"))),'change_field'=>'price','change_value'=>'2'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[change_value] => 2
[update_rows] => 2
)
[msg] => 小白开放接口:App.Table.FreeChangeNumber
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,修改失败(表单不存在或字段类型不是数值类型);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.change_value | 字符串 | 回传客户端本次待更改的数值 |
data.details[].update_rows | 整型 | 本次的更新结果,对应更新的条目数量。没有更新或没有创建时为0,如果进行更新或初始化创建则为1,其他情况为对应更新的条目数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/MultiFreeChangeNumber
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.MultiFreeChangeNumber
接口描述: 批量 改 可以根据自定义的多个条件(AND或者OR),批量修改某个或多个字段的数值,可增加或可减少。通过在服务端进行数值的叠加,尽量保持并发下的数据一致性。注意,此接口可更新多条数据。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
wheres | 字符串JSON格式 | 必须 | 批量条件,格式为:wheres=[第一组,第二组,……]。每一组where参数格式如下:
SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | ||
change_field | 字符串用,分割 | 必须 | 待修改数值的字段名,多个字段名用英文逗号分割。change_value和change_field分割后的数量应当相同。 | ||
change_values | 字符串JSON格式 | 必须 | 批量待叠加的数值,格式是:change_values=["第一组","第二组","……"]。每一组格式为:正数表示相加,负数表示相减,需要传递有效数值。多个数值用英文逗号分割。每一组和change_field分割后的数量应当相同。示例:change_values=["1","2"],更新多个值时的示例:["1,11","2,22"] | ||
try_add_datas | 字符串JSON格式 | 可选 | 批量的初始化数据,格式为:try_add_datas=[第一组,第二组,……]。当无更新时尝试创建的数据,仅当无更新且有传此参数时才会进行数据创建。此参数可用于初始化等操作。try_add_datas要么不传,要么需要和change_values的数量保持一致,对于不需要初始化的可以设置为NULL。此参数只用于初始化,不会再进行change_value的修改。 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.MultiFreeChangeNumber&model_name=article&logic=and&wheres=[[["id", "=", "404"]],[["id", "=", "405"]]]&change_field=view_times&change_values=["2","3"]&try_add_datas=[{"view_times":"1"},{"view_times":"3"}]&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"details": [
{
"err_code": 0,
"err_msg": "",
"change_value": "2",
"update_rows": 1
},
{
"err_code": 0,
"err_msg": "",
"change_value": "3",
"update_rows": 1
}
]
},
"msg": "V1.3.22 小白开放接口 App.Table.MultiFreeChangeNumber"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,修改失败(表单不存在或字段类型不是数值类型);2应用层规则拦截,拦截后可以小白开放平台查看日记,3表示部分失败,具体查看details批量结果 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.details | 字符串 | 批量结果 |
data.details[].change_value | 字符串 | 回传客户端本次待更改的数值 |
data.details[].update_rows | 整型 | 每组数据的更新结果,对应更新的条目数量。没有更新或没有创建时为0,如果进行更新或初始化创建则为1,其他情况为对应更新的条目数量 |
data.details[].err_code | 整型 | 单次操作的操作码,当err_code为0时才表示正确执行,最终更新结果再看update_rows的返回 |
data.details[].err_msg | 字符串 | 单次操作的错误提示信息 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeConcact
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeConcact
接口描述: 改 可以根据自定义的多个条件(AND或者OR),修改某个字段的字符串内容,可以在前面追加拼接,也可以拼接在后面。同时支持分割符。通过在服务端进行字符串的叠加,尽量保持并发下的数据一致性。注意,此接口可更新多条数据。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
change_field | 字符串 | 必须 | 待修改字符串的字段名,如果不希望在前后出现多余的分割符,可将字段的默认值设置为NULL。 | ||
concact_str | 字符串 | 必须 | 待追加的字符串 | ||
seperator | 字符串 | 可选 | 分割符,默认为空字符串 | ||
side | 枚举类型 | 可选 | right | 范围:right/left | 新增的追加在哪边,其中:
|
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeConcact&model_name=article&where=[["id", "=", 41]]&change_field=tag&concact_str=接口&seperator=,&side=right&app_key={你的app_key}&sign={动态签名}
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeConcact&model_name=article&where_id=41&change_field=tag&concact_str=接口&seperator=,&side=right&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"update_rows": 1
},
"msg": "小白开放接口:App.Table.FreeConcact"
}
假设id=41的数据,标签字段tag最初的默认值为NULL,那么第一次请求后,tag变成:接口。
当再次请求时,tag此时原来的内容是:接口。则会变成:接口,接口。中间有分割符逗号。
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,修改失败(表单不存在或字段类型不是数值类型);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.update_rows | 字符串 | 本次更新的条数,没有更新时为0 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeFindOne
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeFindOne
接口描述: 查 可以根据自定义的多个条件(AND或者OR),查找获取一条数据
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
fields | 字符串用,分割 | 可选 | 需要返回的字段名,多个字段用英文逗号分割,示例:fields=id,uuid,add_time |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeFindOne&model_name=article&where=[["title","=","123456"]]&app_key={你的app_key}&sign={动态签名}
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeFindOne&model_name=article&where_title=123456&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"data": {
"id": "5",
"uuid": "",
"add_time": "2018-06-27 22:13:28",
"update_time": null,
"ext_data": null,
"title": "123456",
"content": null,
"post_time": "1970-01-01 00:00:00",
"view_times": "0"
}
},
"msg": "",
"info": [
"当前请求接口:App.Table.FreeFindOne",
"小白入门教程:a.okayapi.com/Aa5PH4"
]
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeFindOne', array('model_name'=>'telephone','where'=>json_encode(array(array("id",">","1"),array("id",">","3"))),'logic'=>'and'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[data] => Array
(
[id] => 2
[uuid] =>
[add_time] => 2019-02-02 22:49:18
[update_time] =>
[ext_data] =>
[mobile] => 13902985399
[mobile_status] => 1
)
)
[msg] => 小白开放接口:App.Table.FreeFindOne
)
*/
#!/usr/bin/python
#coding=utf-8
import requests
import hashlib
# TODO: 请根据需要,换成您的HOST,app_key和app_secrect
API_URL = '你的小白接口域名,例如:http://api.okayapi.com/'
APP_KEY = '你的app_key'
APP_SECRET = '你的app_secrect'
# 生成签名
def Signature(params, key=None, secret=None):
key = key or APP_KEY
secret = secret or APP_SECRET
params.pop('app_secrect', None)
params['app_key'] = key
md5_ctx = hashlib.md5()
md5_ctx.update(''.join([params[value] for value in sorted([key for key in params])]) + secret)
return md5_ctx.hexdigest().upper()
# 调用小白开放接口
def HTTPGet(url, params):
params['sign'] = Signature(params)
resp = requests.get(url, params)
return resp.json()
def main():
# 待请求的接口与相关参数(根据需要,可动态调整请求参数)
params = {
's': 'App.Table.FreeFindOne',
'model_name': 'okayapi_message',
'logic': 'or',
'where': json.dumps([['message_nickname', '=', 'hehe'], ['message_key', '=', 'a']])
}
# 发起请求
return HTTPGet(API_URL, params)
pprint.pprint(main())
# {u'data': {u'data': {u'add_time': u'2019-01-31 15:11:20',
# u'ext_data': None,
# u'id': u'4',
# u'message_content': u'<p><img src="http://img.baidu.com/hi/jx2/j_0002.gif"/></p><p>wala</p><pre class="brush:cpp;toolbar:false">#include <stdio.h></pre><p><br/></p>',
# u'message_key': u'a',
# u'message_nickname': u'hehe',
# u'message_pid': u'0',
# u'message_post_time': u'0000-00-00 00:00:00',
# u'update_time': None,
# u'uuid': u''},
# u'err_code': 0,
# u'err_msg': u''},
# u'msg': u'\u5f53\u524d\u5c0f\u767d\u63a5\u53e3\uff1aApp.Table.FreeFindOne',
# u'ret': 200}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.data | 对象 | 获取的数据,可以指定返回字段 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/GetDataAfterChangeNum
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.GetDataAfterChangeNum
接口描述: 查改 可以根据自定义的多个条件(AND或者OR),查找获取一条数据,然后对指定的字段进行加减操作,最后返回最新的数据。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
fields | 字符串用,分割 | 可选 | 需要返回的字段名,多个字段用英文逗号分割,示例:fields=id,uuid,add_time | ||
order | 字符串 | 可选 | id ASC | 排序规则,格式:字段名+空格+ASC|DESC,特别地,RAND表示随机排序。 | |
change_field | 字符串 | 必须 | 待加减的字段名 | ||
change_value | 字符串 | 必须 | 待加减的数字,正数表示相加,负数表示相减,需要传递有效数值。例如:change_value=1 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.GetDataAfterChangeNum&model_name=article&logic=and&where=[["id", ">", "1"]]&fields=add_time&order=id asc&change_field=view_times&change_value=1&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"data": {
"view_times": 204,
"add_time": "2019-04-06 17:25:13"
},
"total": 23
},
"msg": "V2.1.0 果创云开放接口 App.Table.GetDataAfterChangeNum"
}
以上会把article文章表单的某一篇文章的阅读数view_times加1,然后返回最新的数据。
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.data | 对象 | 返回加减后的数据,没有数据时返回null;修改成功时固定会返回修改的字段更新后的最新值 |
data.total | 整型 | 符合条件的总数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeRandOne
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeRandOne
接口描述: 查 可以根据自定义的多个条件(AND或者OR),随机获取一条数据。获取数据后不会修改或删除数据。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id",">",0]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
fields | 字符串用,分割 | 可选 | 需要返回的字段名,多个字段用英文逗号分割,示例:fields=id,uuid,add_time |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeRandOne',array('model_name'=>'Price','where'=>json_encode(array(array("id","<","10")))));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[data] => Array
(
[id] => 5
[uuid] =>
[add_time] => 2019-02-12 15:45:19
[update_time] =>
[ext_data] =>
[shangpin] => 苹果
[price] => 8
)
)
[msg] => 小白开放接口:App.Table.FreeRandOne
)
*/
#!/usr/bin/python
#coding=utf-8
import requests
import hashlib
# TODO: 请根据需要,换成您的HOST,app_key和app_secrect
API_URL = '你的小白接口域名,例如:http://api.okayapi.com/'
APP_KEY = '你的app_key'
APP_SECRET = '你的app_secrect'
# 生成签名
def Signature(params, key=None, secret=None):
key = key or APP_KEY
secret = secret or APP_SECRET
params.pop('app_secrect', None)
params['app_key'] = key
md5_ctx = hashlib.md5()
md5_ctx.update(''.join([params[value] for value in sorted([key for key in params])]) + secret)
return md5_ctx.hexdigest().upper()
# 调用小白开放接口
def HTTPGet(url, params):
params['sign'] = Signature(params)
resp = requests.get(url, params)
return resp.json()
def main():
# 待请求的接口与相关参数(根据需要,可动态调整请求参数)
params = {
's': 'App.Table.FreeRandOne',
'model_name': 'okayapi_message'
}
# 发起请求
return HTTPGet(API_URL, params)
pprint.pprint(main())
# {u'data': {u'data': {u'add_time': None,
# u'ext_data': None,
# u'id': u'3',
# u'message_content': u'\u597d\u7528\uff0c\u4e94\u661f\u597d\u8bc4\uff01',
# u'message_key': u'',
# u'message_nickname': u'\u6e38\u5ba2',
# u'message_pid': u'0',
# u'message_post_time': u'2019-01-30 20:00:00',
# u'update_time': None,
# u'uuid': u''},
# u'err_code': 0,
# u'err_msg': u''},
# u'msg': u'\u5f53\u524d\u5c0f\u767d\u63a5\u53e3\uff1aApp.Table.FreeRandOne',
# u'ret': 200}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据;4当前取随机数据已超过10万条,为保证接口服务质量,请联系小白客服进行定制化。 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.data | 对象 | 获取的数据,可以指定返回字段 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreePopOne
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreePopOne
接口描述: 查改非重复 可以根据自定义的多个条件(AND或者OR),查找获取一条数据,并且在获取数据后更改字段,从而实现非重复数据的获取
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
fields | 字符串用,分割 | 可选 | 需要返回的字段名,多个字段用英文逗号分割,示例:fields=id,uuid,add_time | ||
data | 字符串JSON格式 | 可选 | 待更新的数据(注意!获取到数据后将会进行此更新),需要JSON编码后传递。格式:data={"字段名1":"字段值1","字段名2":"字段值2"...}。JSON在线解析及格式化验证(data和data_X二选一) | ||
data_X | 字符串 | 可选 | 动态参数,优先于data的JSON数据。可自由传入动态参数,字段名组合格式:data_ + X(X要换成你的字段名) ,例如数据表单标题title字段,组合后为:&data_title=YesApi,等效于:&data={"title":"YesApi"}。可以同时传入多个动态参数,例如:&data_title=YesApi&data_year=2020,比JSON格式更方便(data和data_X二选一) | ||
order_type | 整型 | 可选 | 1 | 排序类型,默认order_type=1,表示按默认的顺序,即ID升序;order_type=2时表示ID降序;order_type=3表示随机排序,将能更好地实现高并发下的非重复获取(为保证接口质量,随机排序取的数据量超过10W,请联系小白客服进行定制化!);order_type=4表示更新时间update_time升序;order_type=5表示更新时间update_time降序; |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(使用data的JSON格式传递,data和data_X二选一):
{你的接口域名}/?s=App.Table.FreePopOne&model_name=article&where=[["state", "=", 0]]&data={"state":1}&app_key={你的app_key}&sign={动态签名}
请求(使用data_X动态参数传递,data和data_X二选一)(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreePopOne&model_name=article&where_state=0&data_state=1&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"data": {
"id": "2",
"uuid": "",
"add_time": "2018-04-09 23:42:25",
"update_time": ,
"ext_data": ,
"title": "xx",
"content": "yy",
"post_time": "1970-01-01 00:00:00",
"view_times": "2",
"state": "0"
}
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreePopOne', array('model_name'=>'telephone','where'=>json_encode(array(array("mobile_status","=","0"))),'data'=>json_encode(array('mobile_status'=>'1'))));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[data] => Array
(
[id] => 4
[uuid] =>
[add_time] => 2019-02-03 22:22:38
[update_time] =>
[ext_data] =>
[mobile] => 18233330221
[mobile_status] => 0
)
)
[msg] => 小白开放接口:App.Table.FreePopOne
)
*/
#!/usr/bin/python
#coding=utf-8
import requests
import hashlib
# TODO: 请根据需要,换成您的HOST,app_key和app_secrect
API_URL = '你的小白接口域名,例如:http://api.okayapi.com/'
APP_KEY = '你的app_key'
APP_SECRET = '你的app_secrect'
# 生成签名
def Signature(params, key=None, secret=None):
key = key or APP_KEY
secret = secret or APP_SECRET
params.pop('app_secrect', None)
params['app_key'] = key
md5_ctx = hashlib.md5()
md5_ctx.update(''.join([params[value] for value in sorted([key for key in params])]) + secret)
return md5_ctx.hexdigest().upper()
# 调用小白开放接口
def HTTPGet(url, params):
params['sign'] = Signature(params)
resp = requests.get(url, params)
return resp.json()
def main():
# 待请求的接口与相关参数(根据需要,可动态调整请求参数)
params = {
's': 'App.Table.FreePopOne',
'model_name': 'okayapi_message',
'logic': 'or',
'where': json.dumps([['message_nickname', '=', 'hehe'], ['message_key', '=', 'a']]),
'data': json.dumps({'message_key': 'cba'})
}
# 发起请求
return HTTPGet(API_URL, params)
pprint.pprint(main())
# {u'data': {u'data': {u'add_time': u'2019-01-31 15:11:20',
# u'ext_data': None,
# u'id': u'4',
# u'message_content': u'<p><img src="http://img.baidu.com/hi/jx2/j_0002.gif"/></p><p>wala</p><pre class="brush:cpp;toolbar:false">#include <stdio.h></pre><p><br/></p>',
# u'message_key': u'a',
# u'message_nickname': u'hehe',
# u'message_pid': u'0',
# u'message_post_time': u'0000-00-00 00:00:00',
# u'update_time': u'2019-02-01 14:17:21',
# u'uuid': u''},
# u'err_code': 0,
# u'err_msg': u''},
# u'msg': u'\u5f53\u524d\u5c0f\u767d\u63a5\u53e3\uff1aApp.Table.FreePopOne',
# u'ret': 200}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据;4当前取随机数据已超过10万条,为保证接口服务质量,请联系小白客服进行定制化。 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.data | 对象 | 获取的数据,可以指定返回字段 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreePopAll
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreePopAll
接口描述: 查改非重复 可以根据自定义的多个条件(AND或者OR),查找获取多条数据(取全部或批量多条),并且在获取数据后批量更改字段,从而实现非重复数据的获取
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
fields | 字符串用,分割 | 可选 | 需要返回的字段名,多个字段用英文逗号分割,示例:fields=id,uuid,add_time | ||
data | 字符串JSON格式 | 可选 | 待更新的数据(注意!获取到数据后将会进行此更新),需要JSON编码后传递。格式:data={"字段名1":"字段值1","字段名2":"字段值2"...}。JSON在线解析及格式化验证(data和data_X二选一) | ||
data_X | 字符串 | 可选 | 动态参数,优先于data的JSON数据。可自由传入动态参数,字段名组合格式:data_ + X(X要换成你的字段名) ,例如数据表单标题title字段,组合后为:&data_title=YesApi,等效于:&data={"title":"YesApi"}。可以同时传入多个动态参数,例如:&data_title=YesApi&data_year=2020,比JSON格式更方便(data和data_X二选一) | ||
order_type | 整型 | 可选 | 1 | 排序类型,默认order_type=1,表示按默认的顺序,即ID升序;order_type=2时表示ID降序;order_type=3表示随机排序,将能更好地实现高并发下的非重复获取;order_type=4表示更新时间update_time升序;order_type=5表示更新时间update_time降序; | |
top_num | 整型 | 可选 | 0 | 最小:0 | 最多返回前面多少条,0表示全部取出 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.data | 对象 | 获取的数据,可以指定返回字段 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/DropOneByOne
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.DropOneByOne
接口描述: 查删非重复 根据主键id从小到大依次获取数据,取完就立即删除,从而实现非重复数据的获取。此接口即便在高并发下也能保证数据非重复。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.DropOneByOne&model_name=article&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"data": {
"id": "1",
"uuid": "",
"title": "小接口做大事情!",
"add_time": "2019-01-26 18:04:30"
}
},
"msg": ""
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据;4并发太大,请稍候重试! |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.data | 对象 | 获取到的非重复数据,即整条纪录数据。 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeMin
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeMin
接口描述: 查 可以根据自定义的多个条件(AND或者OR),获取某个字段的最小值
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
field | 字符串 | 必须 | 取哪个字段的最小值,如:field=id |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeMin&model_name=article&where=[["id", "<", 3]]&field=view_times&app_key={你的app_key}&sign={动态签名}
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeMin&model_name=article&where_id=LT-3&field=view_times&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"min": "2"
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeMin', array('model_name'=>'Price','where'=>json_encode(array(array("shangpin","LIKE","%葡萄%"))),'field'=>'price'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[min] => 16
)
[msg] => 小白开放接口:App.Table.FreeMin
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.min | 字符串 | 获取的最小值 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeMax
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeMax
接口描述: 查 可以根据自定义的多个条件(AND或者OR),获取某个字段的最大值
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
field | 字符串 | 必须 | 取哪个字段的最大值,如:field=id |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.FreeMax&model_name=article&where=[["id", "<", 3]]&field=view_times&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"max": "5"
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeMax', array('model_name'=>'Price','where'=>json_encode(array(array("shangpin","LIKE","%葡萄%"))),'field'=>'price'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[max] => 20
)
[msg] => 小白开放接口:App.Table.FreeMax
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.max | 字符串 | 获取的最大值 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeAggregation
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeAggregation
接口描述: 查统计 可以根据自定义的多个条件(AND或者OR),进行SUM/COUNT/MIN/MAX/AVG等聚合运算,同时支持多个字段的聚合运算。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
op_funs | 字符串用,分割 | 必须 | 最小:1 | 聚合函数操作,支持多个聚合运算,目前支持:SUM/COUNT/MIN/MAX/AVG,分别表示:求和/数目/最小/最大/平均数,注意全部大写,多个用英文逗号分割。 | |
op_fields | 字符串用,分割 | 必须 | 进行聚合的字段名称,需要和op_funs的运算一一对应,,多个用英文逗号分割。例如:假设op_funs=SUM,COUNT,同时op_fields=price,id,那么最终相当于:SUM(price), COUNT(id),返回结果字段是:SUM_price, COUNT_id | ||
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.FreeAggregation&model_name=article&op_funs=COUNT,SUM&op_fields=id,view_times&logic=and&where=[["git_author", "=", "dogstar"]]&app_key={你的app_key}&sign={动态签名}
返回(计算某位作者共发表多少张文章,以及合计的阅读数量):
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"report": {
"COUNT_id": 5,
"SUM_view_times": "760"
}
},
"msg": "小白开放接口:App.Table.FreeAggregation"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.report | 对象 | 聚合运算的表格数据 |
data.report.SUM_field | mixed | 返回的字段是动态的名称,字段名是:聚合运算名+下划线+字段名,例如:SUM_field。失败时返回 NULL,根据运算和字段类型不同,返回结果可能是int,也可能是string类型,或浮点数。 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeSum
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeSum
接口描述: 查统计 可以根据自定义的多个条件(AND或者OR),计算某个字段的总和
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
field | 字符串 | 必须 | 取哪个字段的总和,如:field=money |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeSum&model_name=article&logic=or&where=[["id","=",1],["id","=",5]]&field=view_times&app_key={你的app_key}&sign={动态签名}
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeSum&model_name=article&logic=or&where_id=1||5&field=view_times&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"sum": "5"
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeSum',array('model_name'=>'Price','where'=>json_encode(array(array("shangpin","=","苹果"))),'field'=>'price'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[sum] => 20
)
[msg] => 小白开放接口:App.Table.FreeSum
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,获取失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记;3查无数据 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.sum | 字符串 | 总和 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeDelete
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeDelete
接口描述: 删 可以根据自定义的多个条件(AND或者OR),删除多条数据。数据一旦删除,无法恢复,请谨慎操作!
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
max_delete_num | 整型 | 可选 | 0 | 最小:0 | 最多删除多少条,0表示无限制,即全部删除 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeDelete&model_name=article&where=[["id","=",4]]&max_delete_num=1&app_key={你的app_key}&sign={动态签名}
请求(where和where_X二选一):
{你的接口域名}/?s=App.Table.FreeDelete&model_name=article&where_id=4&max_delete_num=1&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"delete_total": 0
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeDelete', array('model_name'=>'Price','where'=>json_encode(array(array("shangpin","=","橘子"))),'logic'=>'or'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[delete_total] => 1
)
[msg] => 小白开放接口:App.Table.FreeDelete
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,删除失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.delete_total | 整型 | 删除的条目数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeMultiCal
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeMultiCal
接口描述: 批量改 根据条件,批量进行四则运算,即:加/减/乘/除。例如,field=x,op=add,number=1,组合起来表示:x=x+1。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
field | 字符串 | 必须 | 待更新的字段,如:field=money,此字段必须为数值类型 | ||
op | 枚举类型 | 必须 | 范围:add/sub/mul/div | 运算符号,加:add,减:sub,乘:mul,乘:div | |
number | 字符串 | 必须 | 待运算的数字,例如加多少,减多少,乘多少,除多少。必须为合法的数字,可以是小数 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.FreeMultiCal&model_name=article&where=[["id","=","1"]]&field=view_times&op=add&number=1&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"update_rows": 1
},
"msg": ""
}
<?php
// 引入文件
require_once dirname(__FILE__) . '/OkayApiClient.php';
// 调用小白开放接口
$rs = OkayApiClient::request('App.Table.FreeMultiCal', array('model_name'=>'Price','where'=>json_encode(array(array("shangpin","LIKE","%葡萄%"))),'field'=>'price','op'=>'mul','number'=>'0.5'));
// 输出结果
print_r($rs);
/*
Array
(
[ret] => 200
[data] => Array
(
[err_code] => 0
[err_msg] =>
[update_rows] => 2
)
[msg] => 小白开放接口:App.Table.FreeMultiCal
)
*/
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,删除失败(表单不存在);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.update_rows | 字符串 | 本次更新的条数,没有更新时为0 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/GetFiledDailyDataReport
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.GetFiledDailyDataReport
接口描述: 查统计 针对单个字段,获取两个周期内每日的统计报表,可以统计总数或总条目数量,即:sum({field}) 或 count({field})。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
op | 枚举类型 | 可选 | COUNT | 范围:SUM/COUNT | 需要统计的类型,求和:SUM,算总条目数:COUNT |
field | 字符串 | 必须 | 需要统计的字段,如:field=money | ||
date_field | 字符串 | 必须 | add_time | 需要统计的时间日期字段,此字段类型必须是datetime,如:field=add_time | |
days | 整型 | 可选 | 7 | 最大:180 | 多少天前的对比报表数据,例如7表示一周前,30天表示上个月 |
startDate | 日期 | 可选 | 开始日期,例如:2020-02-20 | ||
endDate | 日期 | 可选 | 结束日期,例如:2020-02-27,包含结束当天的数据。 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.GetFiledDailyDataReport&model_name=article&op=COUNT&field=view_times&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"items": {
"now": [
{
"date": "2019-03-12",
"total": 0,
"id": 1
},
{
"date": "2019-03-13",
"total": 0,
"id": 2
},
{
"date": "2019-03-14",
"total": 0,
"id": 3
},
{
"date": "2019-03-15",
"total": 0,
"id": 4
},
{
"date": "2019-03-16",
"total": 0,
"id": 5
},
{
"date": "2019-03-17",
"total": 3,
"id": 6
},
{
"date": "2019-03-18",
"total": 0,
"id": 7
}
],
"pre": [
{
"date": "2019-03-05",
"total": 0,
"id": 1
},
{
"date": "2019-03-06",
"total": 0,
"id": 2
},
{
"date": "2019-03-07",
"total": 0,
"id": 3
},
{
"date": "2019-03-08",
"total": 0,
"id": 4
},
{
"date": "2019-03-09",
"total": 0,
"id": 5
},
{
"date": "2019-03-10",
"total": 3,
"id": 6
},
{
"date": "2019-03-11",
"total": 0,
"id": 7
}
]
}
},
"msg": "小白开放接口:App.Table.GetFiledDailyDataReport"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 操作码,0表示成功,正数表示业务失败场景,负数表示系统失败场景 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.items | 对象 | 报表数据 |
data.items.now | 字符串 | 最近几天的统计数据 |
data.items.now[].id | 整型 | 序号 |
data.items.now[].date | 字符串 | 日期,格式如:2019-04-01 |
data.items.now[].total | 浮点型 | 统计的总数 |
data.items.pre | 字符串 | 上一周期的统计数据 |
data.items.pre[].id | 整型 | 序号 |
data.items.pre[].date | 字符串 | 日期,格式如:2019-04-01 |
data.items.pre[].total | 浮点型 | 统计的总数 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeTree
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeTree
接口描述: 查 可以根据自定义条件获取树状分类的数据,可用于:组织架构、目录分类、网站菜单、级联地址等场景。要求:表单结构中须含有指向父级的ID。当前最多一次性获取两层。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
parent_field | 字符串 | 必须 | parent_id | 子级存放父级id的字段名称,此字段必须要出现在表单中,为int类型。如果不想使用默认的字段名称parent_field ,可以自定义其他字段名称。 | |
parent_id | 整型 | 必须 | 0 | 所属父类id的值,顶级分类的父级id值为0。固定对应表单中id字段的值。具体使用请见下方请求示例。 | |
where | 字符串JSON格式 | 可选 | [] | 可选且安全的where条件,格式为:[["第一个位置表示字段名称(字段必须先存在)","第二个位置表示判断>符号(可以是:>、>=、<、<=、=、<>, LIKE)","第三个位置表示判断值"]]。多个条件逻辑关系为:AND,并且接口会默认加上父级ID的匹配。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) | ||
select | 字符串用,分割 | 可选 | SQL语句的SELECT部分,多个字段用英文逗号分割,如:select=id,uuid | ||
order | 字符串JSON格式 | 可选 | [] | SQL语句的ORDER部分,格式为:[第一组排序,第二组排序,……],如:order = ["id DESC", "add_time ASC"],表示 id DESC, add_time ASC。特别地,RAND表示随机排序。 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
假设有表单网站菜单:website_menu
表单数据有:
+----+--------------+-----------+
| id | title | parent_id |
+----+--------------+-----------+
| 1 | 首页 | 0 |
| 2 | 接口 | 0 |
| 3 | 通用接口 | 2 |
| 4 | 插件接口 | 2 |
| 5 | 文档 | 0 |
| 6 | 接口文档 | 5 |
| 7 | 平台文档 | 5 |
| 8 | 联系我们 | 0 |
+----+--------------+-----------+
请求:
{你的接口域名}/?s=Table.FreeTree&model_name=website_menu&parent_id=0&select=title&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"tree": [
{
"title": "首页",
"id": 1,
"parent_id": 0,
"children_tree": []
},
{
"title": "接口",
"id": 2,
"parent_id": 0,
"children_tree": [
{
"title": "通用接口",
"id": 3,
"parent_id": 2
},
{
"title": "插件接口",
"id": 4,
"parent_id": 2
}
]
},
{
"title": "文档",
"id": 5,
"parent_id": 0,
"children_tree": [
{
"title": "接口文档",
"id": 6,
"parent_id": 5
},
{
"title": "平台文档",
"id": 7,
"parent_id": 5
}
]
},
{
"title": "联系我们",
"id": 8,
"parent_id": 0,
"children_tree": []
}
]
},
"msg": "小白开放接口:App.Table.FreeTree"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,查询失败(表单不存在或查询错误);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.tree | 字符串 | 树状数据 |
data.tree[].id | 整型 | 固定返回,ID |
data.tree[].{parent_id} | 整型 | 固定返回,父级ID,字段名由客户端指定 |
data.children_tree | 字符串 | 子节点的树状数据,没有时为空数组。表单中不能添加children_tree字段,以免引起冲突。返回字段、过滤条件和排序逻辑和顶层一样。 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/Transfer
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.Transfer
接口描述: 改 在同一个表单内的同一字段,进行点对点同级“转账”操作。例如:把A账号的100积分转到B账号的积分。要求:转出和转入账号纪录已经存在且必须唯一;字段类型和“转账”数量均为整数;符合交换律和零和(即A转给B,然后B再转给A后,恢复和最初的一样)。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
account_field | 字符串 | 必须 | 最小:1 | 账号字段名称 | |
from_account | 字符串 | 必须 | 最小:1 | 转出账号,即对应account_field字段的值,必须存在且唯一 | |
to_account | 字符串 | 必须 | 最小:1 | 转入账号,即对应account_field字段的值,必须存在且唯一 | |
amount_field | 字符串 | 必须 | 最小:1 | 数量字段名称,此字段必须为整数类型,例如:tinyint、smallint、int、bigint等 | |
amount | 整型 | 必须 | 最小:1 | 待转的数量,必须为整数,且为正整数,且转出账号数量充足 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
假设有以下表单数据:
+----------+--------+
| username | points |
+----------+--------+
| A | 10 |
| B | 5 |
+----------+--------+
现在需要把A账号的3个元宝转移给B账号。那么此时,转出账号为A,转入账号为B,转移的数量为3,账号字段为username,数量字段为points。
请求:
{你的接口域名}/?s==App.Table.Transfer&model_name=points&account_field=username&from_account=A&to_account=B&amount_field=points&amount=3&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"from_account_amout": 7,
"to_account_amout": 8,
"amount": 3
},
"msg": "小白开放接口:App.Table.Transfer"
}
成功转移后,表单的最新数据是:
+----------+--------+
| username | points |
+----------+--------+
| A | 7 |
| B | 8 |
+----------+--------+
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误;2应用层规则拦截,拦截后可以小白开放平台查看日记;10转出账号不存在;11转出账号不唯一;12转出账号数量不足;20转入账号不存在;21转入账号不唯一 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.from_account_amout | 整型 | 成功转移后转出账号的剩余数量 |
data.to_account_amout | 整型 | 成功转移后转入账号的最新数量 |
data.amount | 整型 | 成功转移后本次转移的数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/GetOneDataByOneField
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.GetOneDataByOneField
接口描述: 查 根据一个字段快速获取其他字段的数据。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
field_name | 字符串 | 必须 | 需要匹配的表单字段名称 | ||
field_value | 字符串 | 必须 | 需要查找和对比的字段值 | ||
select | 字符串用,分割 | 可选 | 需要返回的字段,默认返回全部字段,多个字段用英文逗号分割,如:select=id,uuid |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.GetOneDataByOneField&model_name=article&field_name=title&field_value=aaa&select=title,view_times,add_time&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"data": {
"id": 42,
"title": "aaa",
"view_times": 0,
"add_time": "2019-11-29 15:25:16"
}
},
"msg": "V1.3.22 小白开放接口 App.Table.GetOneDataByOneField"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,修改失败(表单不存在或字段类型不是数值类型);2应用层规则拦截,拦截后可以小白开放平台查看日记,3数据不存在或已删除 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.data | 对象 | 查找到的数据,如果未找到则为null。其中,id字段固定返回。 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/GetMoreDataByMoreField
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.GetMoreDataByMoreField
接口描述: 查 根据一个字段或多个字段取一条或多条数据。最多返回20条。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
field_name_list | 字符串用,分割 | 必须 | 最小:1 | 需要匹配的表单字段名称列表,多个字段用英文逗号分割,如:field_name_list=title,name | |
field_value_list | 字符串用,分割 | 必须 | 最小:1 | 需要查找和对比的字段值列表,多个值用英文逗号分割,如:field_value_list=标题,小白 。字段值不能含有英文逗号。field_value_list数量必须和field_name_list数量保持一致。 | |
select | 字符串用,分割 | 可选 | 需要返回的字段,默认返回全部字段,多个字段用英文逗号分割,如:select=id,uuid | ||
page | 整型 | 可选 | 1 | 最小:1 | 第几页 |
perpage | 整型 | 可选 | 20 | 最小:1;最大:10000 | 分页数量 |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.GetMoreDataByMoreField&model_name=article&logic=and&field_name_list=title,view_times&field_value_list=aaa,0&select=title,view_times,add_time&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"items": [
{
"title": "aaa",
"view_times": 0,
"add_time": "2019-11-29 15:25:16"
},
{
"title": "aaa",
"view_times": 0,
"add_time": "2019-12-15 22:03:40"
}
]
},
"msg": "V1.3.22 小白开放接口 App.Table.GetMoreDataByMoreField"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误;2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.items | 对象 | 查找到的数据列表,如果未找到则为空数组。默认返回20条,ID升序获取。 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/GetFieldDropdownList
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.GetFieldDropdownList
接口描述: 查 获取指定字段的下拉列表,全表去重后顺序显示。最多显示前面1000条。
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
field_name | 字符串 | 必须 | 字段名称,需要获取下拉列表的字段 | ||
num | 整型 | 可选 | 100 | 最小:2;最大:1000 | 返回的列表数量 |
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id",">",0]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
请求:
{你的接口域名}/?s=App.Table.GetFieldDropdownList&model_name=article&field_name=tag&app_key={你的app_key}&sign={动态签名}
返回:
{
"ret": 200,
"data": {
"err_code": 0,
"err_msg": "",
"items": [
"",
"接口",
"开发"
]
},
"msg": "V1.4.9 小白开放接口 App.Table.GetFieldDropdownList"
}
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 状态操作码,0成功;1开发类错误,修改失败(表单不存在或字段类型不是数值类型);2应用层规则拦截,拦截后可以小白开放平台查看日记 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.items | 字符串 | 查找到的下拉列表数据,每个元素为字段值。 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
接口路径(新):http://hn216.api.yesapi.cn/api/App/Table/FreeReplace
接口路径(旧):http://hn216.api.yesapi.cn/?s=App.Table.FreeReplace
接口描述: 批量 改 针对表单的单个字段,根据指定的查找值和替换值进行自定义条件的批量替换
参数名字 | 参数类型 | 是否必须 | 默认值 | 备注 | 参数说明 |
---|---|---|---|---|---|
app_key | 字符串 | 必须 | 最小:32 | 公共参数 开发者应用的app_key,查看我的app_key,如果还没有,可免费注册开通。 | |
sign | 字符串 | 可选 | 公共参数接口签名,其中: | ||
uuid | 字符串 | 可选 | 公共参数 UUID,当前登录的应用会员ID,即全局唯一用户ID,查看我的应用会员。传递此参数后,可以在开放平台查看每日活跃会员统计图表。uuid需要和token一起传递。 | ||
token | 字符串 | 可选 | 公共参数 当前登录会员的会话凭证,可通过会员登录接口获得。uuid需要和token一起传递。 | ||
return_data | 字符串 | 可选 | 0 | 公共参数 数据返回结构,其中:
| |
model_name | 字符串 | 必须 | 表单名称(对应在小白开放平台创建时的数据库表名称),查看我的全部表单 | ||
model_uuid | 字符串 | 可选 | 最大:32 | 表单UUID,即对应表单数据里的uuid字段。分为三种情况:
| |
check_code | 字符串 | 可选 | 最大:64 | 待检测的口令,仅当在小白开放平台配置口令后才会对此参数进行检测,规则配置教程 | |
field_name | 字符串 | 必须 | 字段名称,需要替换的字段名 | ||
from_str | 字符串 | 必须 | 要替换的子字符串 | ||
to_str | 字符串 | 必须 | 新的替换子字符串,不能和from_str一样 | ||
logic | 枚举类型 | 可选 | and | 范围:and/or | where条件的逻辑组合,logic=and表示逻辑且,logic=or表示逻辑或 |
where | 字符串JSON格式 | 可选 | [["id", ">=", "1"]] | SQL语句的WHERE查询条件,JSON格式,格式为:[第一组条件, 第二组条件, ……]。(where和where_X二选一,不可混用,以where_X优先) 写法1:每一组的条件格式为:["字段名", "比较符", "比较值"],其中:
写法2(Beta):每一组的条件格式可以为:MySQL条件字符串,支持嵌套、组合、函数等,功能更强大,组合更灵活,但要求:
以上两种写法可以混合使用。如果需要有效防止SQL注入,请用写法1;如果需要更强大的条件组合,并且是固定参数条件时,可用写法2。更多示例说明请参考WHERE参数介绍。 | |
where_X | 字符串 | 可选 | 动态条件,优先于where的JSON数据,简化的where条件,更易使用但只支持部分比较符。条件格式:where_ + X(X要换成你的字段名) = 比较符(见下方) + 中横线(-) + 比较值 。支持的比较符和示例如下:
|| 分割,如:where_year=GT-2000||LT-2020,表示year年份大于2020(logic=and或logic=or)小于2020。(where和where_X二选一,不可混用,以where_X优先) |
查看我的接口域名、app_key和app_secrect 客户端接入指南(如何生成签名) 开启/关闭签名
返回字段 | 类型 | 说明 |
---|---|---|
ret | 整型 | 接口状态码,200表示成功,4xx表示客户端非法请求,5xx表示服务端异常,查看异常错误码 |
data | object/array/混合 | 接口返回的业务数据,由不同的API接口决定不同的数据返回字段和结构。当return_data=1时,接口只会返回此data字段。 |
data.err_code | 整型 | 操作状态码,0表示成功,1表示更新失败,2表示表单规则不通过 |
data.err_msg | 字符串 | 错误提示信息,err_code非0时参考此提示信息 |
data.update_total | 整型 | 成功更新的数量 |
msg | 字符串 | 提示信息,面向技术人员的帮助或错误提示信息 |
_t | 整数 | 服务器当时Unix时间戳,例如:1657513450 |
_auth | 字符串 | 反向数字签名,可用于客户端进行反向验证,防止数据篡改,例如:9bcd54ff53e71a1d80d37c52bdfabf76。验证算法:_auth = md5(data返回的JSON字符串 + _t当前时间戳字符串 + APP_SECRECT密钥字符串) ,若需要关闭或开启请提交工单 |
特别注意:当前 hn216.api.yesapi.cn 为临时接口测试域名!请先完成 绑定独立接口域名后 ,才能正式进行API调用。
由 果创云YesApi.cn 提供技术支持,4万+开发者都在用,累计API调用1,800,000+万次