导出数据
功能介绍
导出数据表中的具体数据。平台中创建的对象中,其内部的数据是支持导出的,该接口支持将对象中的数据按照设定的周期频率、筛选条件进行导出。根据设定的执行时间,会自动生成定时任务,定期或单次执行导出任务,数据导出完成后可调用文件下载接口下载文件,导出完成后您可根据得到的定时任务id查看该任务的执行情况。
URI
POST AstroZero域名/u-route/baas/bulk/v1.0/export/data?flag=template&file_type=csv
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
file_type |
是 |
String |
参数解释: 导出文件的格式,支持csv格式和txt格式。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
cond |
否 |
cond objects |
参数解释: 导出筛选条件,为一个结构体,包含conditions和conjunction两个字段。 约束限制: 不涉及。 |
encode-type |
是 |
String |
参数解释: 导出文件的编码格式。 约束限制: 不涉及。 取值范围: 支持“UTF-8”和“GBK”两种类型。 默认取值: 不涉及。 |
firstScheduleDate |
否 |
String |
参数解释: 首次导出时间,格式为“yyyy-MM-dd HH:mm:ss” 约束限制:
取值范围: 不涉及。 默认取值: 不涉及。 |
objects |
否 |
Array of Strings |
参数解释: 需要导出的对象,为一字符串数组,数组中每个字符串为一个对象名,可同时导出多个对象数据,也可通过templateName参数指定模板选择导出的数据。 约束限制: 不涉及。 |
scheduleMode |
是 |
Number |
参数解释: 导出任务的执行次数。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
scheduleInterval |
否 |
Number |
参数解释: 导出任务的执行间隔。 约束限制: “scheduleMode=2”时必选。 取值范围: 不涉及。 默认取值: 不涉及。 |
intervalUnit |
否 |
Number |
参数解释: 导出任务执行间隔对应的单位。 约束限制: “scheduleMode=2”时必选。 取值范围:
默认取值: 不涉及。 |
isImmediate |
否 |
Boolean |
参数解释: 是否立即导出。 约束限制: “scheduleMode=1”时可选,“scheduleMode=1”时与firstScheduleDate互斥。 取值范围: 不涉及。 默认取值: 不涉及。 |
templateName |
否 |
String |
参数解释: 数据导出使用的模板名称,也可通过objects参数直接指定希望导出的对象。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
conditions |
Array of condition objects |
参数解释: 条件数组,数组中每项作为一个条件。 约束限制: 不涉及。 |
conjunction |
String |
参数解释: conditions数组中各个条件的组合方式。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
参数 |
是否必选 |
描述 |
---|---|---|
field |
是 |
参数解释: 筛选条件字段。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
operator |
是 |
参数解释: 筛选运算操作。 约束限制: 只有时间类型的筛选字段支持所有操作,其他类型的字段仅支持eq/ne(等于或不等于)。 取值范围:
默认取值: 不涉及。 |
value |
是 |
参数解释: 进行比较的具体值。 约束限制: 不涉及。 取值范围: 当“operator”为“timeFunc”时,支持以下函数:
若比较的字段为时间类型,则此处使用的时间字符串应为“yyyy-MM-dd HH:mm:ss”格式。 默认取值: 不涉及。 |
响应参数
参数 |
参数类型 |
描述 |
---|---|---|
resCode |
String |
参数解释: 返回码。 取值范围: 如果返回“0”代表请求成功,其他错误码说明请参考错误码。 |
resMsg |
String |
参数解释: 返回消息。 取值范围: 如果成功状态,通常会返回“Success”,其他情况会返回具体的错误信息。 |
result |
String |
参数解释: 创建成功的记录ID,成功时返回。 取值范围: 不涉及。 |
请求示例
- 示例1
如下请求创建了一个仅执行一次的数据导出任务,执行时间为2020-05-31 00:00:00,导出的文件格式为csv,编码格式为utf-8,需要导出的对象通过名为“myTemplate”的模板指定,未指定任何导出筛选条件。
POST https://AstroZero域名/u-route/baas/bulk/v1.0/export/data?flag=template&file_type=csv { "scheduleMode": 1, "firstScheduleDate": "2020-05-31 00:00:00", "encodeType": "utf-8", "templateName": "myTemplate" }
- 示例2
如下请求创建了周期性执行的数据导出任务,首次执行时间为2020-06-01 00:00:00,往后每隔一个月执行一次,导出的文件格式为txt,编码格式为GBK,需要导出的对象以数组的形式列在objects中,同时设定筛选条件,仅导出创建者id(createBy)为“1234567890xyz”的数据。
POST https://AstroZero域名/u-route/baas/bulk/v1.0/export/data?flag=template&file_type=txt { "scheduleMode": 2, "firstScheduleDate": "2020-06-01 00:00:00", "scheduleInterval": 1, "intervalUnit": "Month", "templateName": "template01", "encodeType": "gbk", "objects": [ "Flow", "Page" ], "cond": { "conjunction": "AND", "conditions": [ { "field": "createdBy", "operator": "eq", "value": "1234567890xyz" } ] } }
响应示例
- 响应示例1
{ "resCode": "0", "resMsg": "成功", "result": "abcdefghijklmnopqrst" }
- 响应示例2
{ "resCode": "0", "resMsg": "成功", "result": "1234567890abcdefg" }
状态码
状态码请参见状态码。
错误码
错误码请参见错误码。