执行解析任务 API 接口说明
1. 接口基本信息
- 接口路径:
/api/data_parse/execute_parse_task
- 请求方法:
POST
- 请求类型:
application/json
2. 输入参数说明
参数名 |
类型 |
是否必填 |
说明 |
task_type |
string |
是 |
任务类型。可选值:名片 、简历 、新任命 、招聘 、杂项 |
data |
array |
是 |
任务数据列表。每种任务类型的数据结构不同,见下文 |
publish_time |
string |
否(新任命必填) |
发布时间,仅新任命 任务需要 |
process_type |
string |
否 |
杂项任务时的处理类型,默认为table |
id |
int |
是 |
解析任务ID(所有任务都必须传递,用于唯一标识任务) |
注意: id
字段为所有任务类型必填。
2.1 data 字段结构
- 名片:图片文件的MinIO路径或Base64字符串等(具体由后端约定)
- 简历:简历文件的MinIO路径或Base64字符串等
- 新任命:Markdown文本内容数组
- 招聘:招聘数据对象数组
- 杂项:图片或表格等文件的MinIO路径或Base64字符串等
3. 请求示例
3.1 名片任务
{
"task_type": "名片",
"data": [
"minio/path/to/card1.jpg",
"minio/path/to/card2.jpg"
],
"id": 123
}
3.2 简历任务
{
"task_type": "简历",
"data": [
"minio/path/to/resume1.pdf",
"minio/path/to/resume2.pdf"
],
"id": 124
}
3.3 新任命任务
{
"task_type": "新任命",
"data": [
"# 张三\n\n职位:总经理\n公司:XX酒店",
"# 李四\n\n职位:市场总监\n公司:YY酒店"
],
"publish_time": "2025-01-15",
"id": 125
}
3.4 招聘任务
{
"task_type": "招聘",
"data": [
{"name": "王五", "position": "销售经理"},
{"name": "赵六", "position": "前台主管"}
],
"id": 126
}
3.5 杂项任务
{
"task_type": "杂项",
"data": [
"minio/path/to/image1.png",
"minio/path/to/image2.png"
],
"process_type": "table",
"id": 127
}
4. 前端调用样例代码(JavaScript/axios)
import axios from 'axios';
async function executeParseTask() {
const payload = {
task_type: '名片',
data: ['minio/path/to/card1.jpg', 'minio/path/to/card2.jpg'],
id: 123
};
try {
const response = await axios.post('/api/data_parse/execute_parse_task', payload);
if (response.data.success) {
console.log('解析成功:', response.data.data);
} else {
console.error('解析失败:', response.data.message);
}
} catch (error) {
console.error('请求异常:', error);
}
}
5. 输出结果说明
- success:布尔值,表示是否处理成功
- message:字符串,处理结果说明
- data:处理结果数据,结构依赖于任务类型
5.1 返回示例(成功)
{
"success": true,
"message": "批量名片解析成功",
"data": {
"summary": {
"total_count": 2,
"success_count": 2,
"failed_count": 0
},
"results": [
{"name": "张三", "mobile": "13800138000", ...},
{"name": "李四", "mobile": "13900139000", ...}
]
}
}
5.2 返回示例(部分成功)
{
"success": true,
"message": "部分数据处理失败",
"data": {
"summary": {
"total_count": 2,
"success_count": 1,
"failed_count": 1
},
"results": [
{"name": "张三", "mobile": "13800138000", ...},
{"error": "文件格式不支持"}
]
}
}
5.3 返回示例(失败)
{
"success": false,
"message": "task_type参数不能为空",
"data": null
}
6. 状态码说明
状态码 |
说明 |
200 |
处理成功 |
206 |
部分数据处理成功 |
400 |
请求参数错误 |
500 |
服务器内部错误/处理失败 |
7. 备注
task_type
必须为后端支持的类型,否则会返回 400 错误。
data
字段结构需与任务类型匹配。
publish_time
仅在 新任命
任务时必填。
- 返回的
data
字段结构会根据任务类型和处理结果有所不同。
id
字段为所有任务类型必填,用于唯一标识和更新任务状态。