简介
本文档提供关于文档预览任务接口的 API 概览以及 SDK 示例代码。
API | 说明 |
用于提交一个文档预览任务 | |
用于查询指定的文档预览任务 | |
用于拉取符合条件的文档预览任务 |
提交文档预览任务
功能说明
用于提交一个文档预览任务。
示例代码
function createDocProcessJobs() {var config = {// 需要替换成您自己的存储桶信息Bucket: 'examplebucket-1250000000', /* 存储桶,必须 */Region: 'COS_REGION', /* 存储桶所在地域,必须字段 */};var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/doc_jobs';var url = 'https://' + host;var body = COS.util.json2xml({Request: {Tag: 'DocProcess',Input: {Object: '文档.docx', // 存在 cos 里的路径},Operation: {DocProcess: {TgtType: 'jpg',},Output: {Bucket: config.Bucket,Region: config.Region,Object: '文档转码_${Number}.jpg', // 转码后存到 cos 的路径},},}});cos.request({Method: 'POST',Key: 'doc_jobs',Url: url,Body: body,ContentType: 'application/xml',},function(err, data){console.log(err || data);});}createDocProcessJobs();
参数说明
Request 中的具体数据描述如下:
Input 中的具体数据描述如下:
参数名称 | 类型 | 描述 | 是否必填 |
Object | String | 文件在 COS 上的文件路径,Bucket 由 Host 指定 | 是 |
Operation 中的具体数据描述如下:
参数名称 | 类型 | 描述 | 是否必填 |
DocProcess | Array | 当 Tag 为 DocProcess 时有效,指定该任务的参数 | 是 |
Output | Array | 结果输出地址 | 是 |
DocProcess 中的具体数据描述如下:
通用请求参数
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
SrcType | Request.Operation.DocProcess | 源数据的后缀类型,当前文档转换根据 cos 对象的后缀名来确定源数据类型,当 cos 对象没有后缀名时,可以设置该值 | String | 否 |
TgtType | Request.Operation.DocProcess | 转换输出目标文件类型: jpg,转成 jpg 格式的图片文件;如果传入的格式未能识别,默认使用 jpg 格式 png,转成 png 格式的图片文件 pdf,转成 pdf 格式文件(暂不支持指定页数) | String | 否 |
StartPage | Request.Operation.DocProcess | 从第 X 页开始转换;在表格文件中,一张表可能分割为多页转换,生成多张图片。StartPage 表示从指定 SheetId 的第 X 页开始转换。默认为 1 | Int | 否 |
EndPage | Request.Operation.DocProcess | 转换至第 X 页;在表格文件中,一张表可能分割为多页转换,生成多张图片。EndPage 表示转换至指定 SheetId 的第 X 页。默认为 -1 ,即转换全部页 | Int | 否 |
适用于表格文件(Excel)的参数
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
SheetId | Request.Operation.DocProcess | 表格文件参数,转换第 X 个表,默认为 0 ;设置 SheetId 为0,即转换文档中全部表 | Int | 否 |
PaperDirection | Request.Operation.DocProcess | 表格文件转换纸张方向,0代表垂直方向,非0代表水平方向,默认为 0 | Int | 否 |
PaperSize | Request.Operation.DocProcess | 设置纸张(画布)大小,对应信息为: 0 → A4 、 1 → A2 、 2 → A0 ,默认 A4纸张 | Int | 否 |
适用于转码成 png/jpg 图片的参数
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
ImageParams | Request.Operation.DocProcess | String | 否 | |
Quality | Request.Operation.DocProcess | 生成预览图的图片质量,取值范围 [1,100],默认值 100 。 例:值为100,代表生成图片质量为100% | Int | 否 |
Zoom | Request.Operation.DocProcess | 预览图片的缩放参数,取值范围[10,200], 默认值 100 。 例:值为200,代表图片缩放比例为200% 即放大两倍 | Int | 否 |
ImageDpi | Request.Operation.DocProcess | 按指定 dpi 渲染图片,该参数与 Zoom 共同作用,取值范围[96,600],默认值为96 。转码后的图片单边宽度需小于65500像素 | Int | 否 |
PicPagination | Request.Operation.DocProcess | 是否转换成单张长图,设置为 1 时,最多仅支持将20标准页面合成单张长图,超过可能会报错,分页范围可以通过 StartPage、EndPage 控制。默认值为0 ,按页导出图片,TgtType="png"/"jpg" 时生效 | Int | 否 |
Output 中的具体数据描述如下:
参数名称 | 类型 | 描述 | 是否必填 |
Region | String | 存储桶的地域 | 是 |
Bucket | String | 存储结果的存储桶 | 是 |
Object | String | 输出文件路径 | 是 |
返回结果说明
参数名称 | 描述 | 类型 |
err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多详情请参见 错误码 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
- Response | - | Object |
- - - JobsDetail | 任务的详细信息 | Container |
- - - - Code | 错误码,只有 State 为 Failed 时,此参数生效 | String |
- - - - Message | 错误描述,只有 State 为 Failed 时,此参数生效 | String |
- - - - JobId | 新创建任务的 ID | String |
- - - - Tag | 新创建任务的 Tag:DocProcess | String |
- - - - State | 任务的状态,为 Submitted(已提交,待执行)、Running(执行中)、Success(执行成功)、Failed(执行失败)、Pause(任务暂停)、Cancel(任务被取消执行) 其中一个 | String |
- - - - CreationTime | 任务的创建时间 | String |
- - - - QueueId | 任务所属的队列 ID | String |
- - - - Input | Container | |
- - - - Operation | Container |
查询指定文档预览任务
功能说明
用于查询指定的文档预览任务。
示例代码
function describeDocProcessJob() {var config = {// 需要替换成您自己的存储桶信息Bucket: 'examplebucket-1250000000', /* 存储桶,必须 */Region: 'COS_REGION', /* 存储桶所在地域,必须字段 */};var jobId = 'd87fbabd07b8611ed974b3f4b4064872e'; // 替换为自己的 jobIdvar host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/doc_jobs/' + jobId;var url = 'https://' + host;cos.request({Method: 'GET',Key: 'doc_jobs/' + jobId,Url: url,},function(err, data){console.log(err || data);});}describeDocProcessJob();
参数说明
参数名称 | 描述 | 类型 | 是否必选 |
jobId | 文档预览任务 ID | String | 是 |
返回结果说明
参数名称 | 描述 | 类型 |
err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多详情请参见 错误码 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
- Response | - | Object |
- - JobsDetail | Container | |
- - NonExistJobIds | 查询的 ID 中不存在的任务,所有任务都存在时不返回 | String |
拉取符合条件的文档预览任务
功能说明
用于拉取符合条件的文档预览任务。
示例代码
function describeDocProcessJobs() {var config = {// 需要替换成您自己的存储桶信息Bucket: 'examplebucket-1250000000', /* 存储桶,必须 */Region: 'COS_REGION', /* 存储桶所在地域,必须字段 */};var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/doc_jobs';var url = 'https://' + host;cos.request({Method: 'GET',Key: 'doc_jobs',Url: url,Query: {tag: 'DocProcess',},},function(err, data){console.log(err || data);});}describeDocProcessJobs();
参数说明
参数名称 | 描述 | 类型 | 是否必选 |
queueId | String | 否 | |
tag | 任务的 Tag:DocProcess | String | 是 |
orderByTime | Desc 或者 Asc。默认为 Desc | String | 否 |
nextToken | 请求的上下文,用于翻页。上次返回的值 | String | 否 |
size | 拉取的最大任务数。默认为10,最大值为100 | Int | 否 |
states | 拉取该状态的任务,以 , 分割支持多状态:All:全部 Submitted:已提交,待执行 Running:执行中 Success:执行成功 Failed:执行失败 Pause:任务暂停,当暂停队列时,待执行的任务会变为暂停状态 Cancel:任务被取消执行 默认为 All(全部) | String | 否 |
startCreationTime | 拉取创建时间大于该时间的任务。格式为: %Y-%m-%dT%H:%m:%S%z | String | 否 |
endCreationTime | 拉取创建时间小于该时间的任务。格式为: %Y-%m-%dT%H:%m:%S%z | String | 否 |
返回结果说明
参数名称 | 描述 | 类型 |
err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功则为空,更多详情请参见 错误码 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
- Response | - | Object |
- - JobsDetail | Container | |
- - NextToken | 翻页的上下文 Token | String |