文档预解析
更新时间 2025/02/22 07:19:43
英飞画布服务端支持基于 REST API 提前针对单一文档发起预解析请求,支持的文档类型有 ppt
、word
、excel
、pdf
。
解析成功后,您可以基于解析信息及产物 ID,并通过插入文件元素接口将您的文件直接插入画布内。
英飞业务下,文件解析产物的 ID 统一会使用
fileId
进行标记。
前提条件
-
已经完成英飞画布应用的创建动作,详见新人指引文档。
-
了解 REST API 请求的认证方式,详见获取 Access Token 文档。
-
提供接收解析结果的回调地址,并能够处理解析结果数据。
注意:
- 解析的文档不建议大于 500M,否则会有可能造成解析失败。
请求路径
https://developer.infi.cn/infi/api/v1/files/parseTasks
请求参数
字段
类型
描述
必填
fileUrl
string
文档公开下载地址
是
fileName
string
文件名
是
fileType
integer
文件类型,详情见下方说明
是
callbackUrl
string
解析结果回调地址
否
extFileId
string
用户自行指定的标记字段,用以区分回调
否
dpi
integer
文件解析分辨率
否
fileType 文件类型支持:
1: pdf;2: ppt;3: word; 4: excel; 5: 动态ppt; 6: 音频; 7: 视频; 8: 图片。
请求参数示例
{
"fileUrl": "SAMPLE_PUBLIC_PDF_URL",
"callbackUrl": "SAMPLE_CALLBACK_URL",
"fileName": "SAMPLE.pdf",
"fileType": 1,
"extFileId": "SAMPLE_EXT_FILE_ID",
"dpi": 400
}
请求成功情况
响应的 Http 状态码为 200
时表示请求成功,并会带有异步解析任务的 taskId,您需要存储该 ID,
并于解析结果回调达到时,与回调数据中呈现的 taskId 作比对,进而获取可用于插入画布的文件解析产物 fileId
。
请求成功返回数据示例如下:
{
"taskId": "SAMPLE_TASK_ID"
}
- 请求失败情况
响应的 Http 状态码不为200
时表示请求失败,如需更多信息请参考请求错误说明文档。
解析结果说明
当英飞服务端完成对于文件的异步解析处理后,会根据您提供的 callbackUrl
地址以 HTTP POST 请求的形式告知解析结果。
解析成功情况
如果文件解析成功,您收到的请求 payload 示例如下:
{
"fileInfo": {
"fileExt": "pdf",
"totalPage": 10,
"coverWidth": 1920,
"coverHeight": 1080
},
"taskId": "TASK_ID_STRING",
"fileId": "FILE_ID_STRING",
"fileType": 1,
"taskStatus": 100
}
解析结果参数说明如下:
fileInfo.fileExt
:文件扩展名。fileInfo.totalPage
:文档页数,对应插入文档元素请求内所需要的totalPage
参数。在发起请求时, 请务必保证totalPage
数值小于等于解析出的数值。fileInfo.coverWidth
:文档内容分辨率宽度,对应插入文档元素请求内所需要的size.width
参数。fileInfo.coverHeight
:文档内容分辨率高度,对应插入文档元素请求内所需要的size.height
参数。taskId
:文件解析任务的 Id。fileId
:解析产物 ID,对应插入文档元素请求内所需要的fileId
参数。fileType
:文档类型数值,对应插入文档元素请求内所需要的fileType
参数。taskStatus
:任务解析状态。100
: 成功,101
: 失败,102
: 解析中。
解析失败情况
如果文件解析失败,您同样会收到 POST 请求,请求 payload 示例如下:
{
"taskId": "FAILED_TASK_ID",
"taskStatus": 101
}