简介
异步处理任务功能是由 数据万象(Cloud Infinite,CI)提供的,数据万象将处理能力与 COS SDK 完全结合,您可以直接按照本篇文档指引进行使用。
本文档提供关于异步处理任务的相关 API 概览以及 SDK 示例代码。
注意:
COS 小程序 SDK 版本需要大于等于 v1.1.1。
API | 操作描述 |
用于提交一个文档转码任务 | |
用于查询指定的文档转码任务 | |
用于拉取符合条件(状态、创建时间等)的文档转码任务 |
提交文档转码任务
功能说明
本接口用于提交一个文档转码任务
使用示例
function createDocProcessJob() {// sdk引入以及初始化请参考:https://cloud.tencent.com/document/product/436/31953const config = {// 需要替换成您自己的存储桶信息Bucket: 'examplebucket-1250000000', // 存储桶,必须字段Region: 'COS_REGION', // 存储桶所在地域,必须字段 如 ap-beijing};const key = `doc_jobs` //const host = `${config.Bucket}.ci.${config.Region}.myqcloud.com`;const url = `https://${host}/${key}`;const body = COS.util.json2xml({Request: {// 创建任务的 Tag,目前仅支持:DocProcess;是否必传:是Tag: "DocProcess",// 待操作的文件对象;是否必传:是Input: {// 文件在 COS 上的文件路径,Bucket 由 Host 指定;是否必传:是Object: "test.docx",},// 操作规则;是否必传:是Operation: {// 当 Tag 为 DocProcess 时有效,指定该任务的参数;是否必传:否DocProcess: {// 源数据的后缀类型,当前文档转换根据 cos 对象的后缀名来确定源数据类型,当 cos 对象没有后缀名时,可以设置该值;是否必传:否SrcType: "",// 转换输出目标文件类型:jpg,转成 jpg 格式的图片文件;如果传入的格式未能识别,默认使用 jpg 格式png,转成 png 格式的图片文件pdf,转成 pdf 格式文件(暂不支持指定页数);是否必传:否TgtType: "",// 从第 X 页开始转换;在表格文件中,一张表可能分割为多页转换,生成多张图片。StartPage 表示从指定 SheetId 的第 X 页开始转换。默认为1;是否必传:否StartPage: 1,// 转换至第 X 页;在表格文件中,一张表可能分割为多页转换,生成多张图片。EndPage 表示转换至指定 SheetId 的第 X 页。默认为-1,即转换全部页;是否必传:否EndPage: 2,// 表格文件参数,转换第 X 个表,默认为0;设置 SheetId 为0,即转换文档中全部表;是否必传:否SheetId: 0,// 表格文件转换纸张方向,0代表垂直方向,非0代表水平方向,默认为0;是否必传:否PaperDirection: 0,// 设置纸张(画布)大小,对应信息为: 0 → A4 、 1 → A2 、 2 → A0 ,默认 A4 纸张;是否必传:否PaperSize: 0,// 转换后的图片处理参数,支持 基础图片处理 所有处理参数,多个处理参数可通过 管道操作符 分隔,从而实现在一次访问中按顺序对图片进行不同处理;是否必传:否ImageParams: "",// 生成预览图的图片质量,取值范围 [1-100],默认值100。 例:值为100,代表生成图片质量为100%;是否必传:否Quality: 0,// 预览图片的缩放参数,取值范围[10-200], 默认值100。 例:值为200,代表图片缩放比例为200% 即放大两倍;是否必传:否Zoom: 100,// 按指定 dpi 渲染图片,该参数与 Zoom 共同作用,取值范围 96-600 ,默认值为 96 。转码后的图片单边宽度需小于65500像素;是否必传:否ImageDpi: 96,// 是否转换成单张长图,设置为 1 时,最多仅支持将 20 标准页面合成单张长图,超过可能会报错,分页范围可以通过 StartPage、EndPage 控制。默认值为 0 ,按页导出图片,TgtType="png"/"jpg" 时生效;是否必传:否PicPagination: 0,},// 结果输出地址;是否必传:是Output: {// 存储桶的地域;是否必传:是Region: config.Region,// 存储结果的存储桶;是否必传:是Bucket: config.Bucket,// 输出文件路径。非表格文件输出文件名需包含 ${Number} 或 ${Page} 参数。多个输出文件,${Number} 表示序号从1开始,${Page} 表示序号与预览页码一致。${Number} 表示多个输出文件,序号从1开始,例如输入 abc_${Number}.jpg,预览某文件5 - 6页,则输出文件名为 abc_1.jpg,abc_2.jpg${Page} 表示多个输出文件,序号与预览页码一致,例如输入 abc_${Page}.jpg,预览某文件5-6页,则输出文件名为 abc_5.jpg,abc_6.jpg表格文件输出路径需包含 ${SheetID} 占位符,输出文件名必须包含 ${Number} 参数。例如 /${SheetID}/abc_${Number}.jpg,先根据 excel 转换的表格数,生成对应数量的文件夹,再在对应的文件夹下,生成对应数量的图片文件;是否必传:是Object: "${Number}",},},// 任务所在的队列 ID,开通预览服务后自动生成,请使用 查询队列 获取或前往 万象控制台 在存储桶中查询 ;是否必传:否QueueId: "",}});cos.request({Method: 'POST', // 固定值,必须Key: key, // 必须Url: url, // 请求的url,必须Body: body, // 请求体参数,必须ContentType: 'application/xml', // 固定值,必须},function (err, data) {if (err) {// 处理请求失败console.log(err);} else {// 处理请求成功console.log(data.Response);}},);}createDocProcessJob()
参数说明
cos.request 方法参数说明:
参数名称 | 参数描述 | 类型 | 是否必填 |
Method | 固定值:POST | String | 是 |
Url | 请求url,固定值 | String | 是 |
Key | 固定值:doc_jobs | String | 是 |
ContentType | 固定值 | String | 是 |
Body | Object | 是 |
回调函数说明
function(err, data) { ... }
相关链接
查询指定的文档转码任务
功能说明
本用于查询指定的文档转码任务
使用示例
function describeDocProcessJob() {// sdk引入以及初始化请参考:https://cloud.tencent.com/document/product/436/31953const config = {// 需要替换成您自己的存储桶信息Bucket: 'examplebucket-1250000000', // 存储桶,必须字段Region: 'COS_REGION', // 存储桶所在地域,必须字段 如 ap-beijing};const jobId = "xxx";const key = `doc_jobs/${jobId}` // jobId:{jobId};const host = `${config.Bucket}.ci.${config.Region}.myqcloud.com`;const url = `https://${host}/${key}`;cos.request({Method: 'GET', // 固定值,必须Key: key, // 必须Url: url, // 请求的url,必须},function (err, data) {if (err) {// 处理请求失败console.log(err);} else {// 处理请求成功console.log(data.Response);}},);}describeDocProcessJob()
参数说明
cos.request 方法参数说明:
参数名称 | 参数描述 | 类型 | 是否必填 |
Method | 固定值:GET | String | 是 |
Url | 请求url,固定值 | String | 是 |
Key | doc_jobs/{jobId} | String | 是 |
回调函数说明
function(err, data) { ... }
参数名称 | 参数描述 | 类型 |
err | Object | |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
- Response | Object |
相关链接
拉取符合条件的文档转码任务
功能说明
本接口用于拉取符合条件(状态、创建时间等)的文档转码任务
使用示例
function describeDocProcessJobList() {// sdk引入以及初始化请参考:https://cloud.tencent.com/document/product/436/31953const config = {// 需要替换成您自己的存储桶信息Bucket: 'examplebucket-1250000000', // 存储桶,必须字段Region: 'COS_REGION', // 存储桶所在地域,必须字段 如 ap-beijing};const key = `doc_jobs` //const host = `${config.Bucket}.ci.${config.Region}.myqcloud.com`;const url = `https://${host}/${key}`;cos.request({Method: 'GET', // 固定值,必须Key: key, // 必须Url: url, // 请求的url,必须Query: {// 任务的 Tag:DocProcess;是否必传:是tag: "DocProcess",// 拉取该队列 ID 下的任务,可在任务响应内容或控制台中获取;是否必传:否queueId: "",// Desc 或者 Asc。默认为 Desc;是否必传:否orderByTime: "Desc",// 请求的上下文,用于翻页。上次返回的值;是否必传:否nextToken: "",// 拉取该状态的任务,以,分割,支持多状态:All、Submitted、Running、Success、Failed、Pause、Cancel。默认为 All;是否必传:否states: "Success",// 拉取创建时间大于等于该时间的任务。格式为:%Y-%m-%dT%H:%m:%S%z;是否必传:否// startCreationTime: "",// 拉取创建时间小于等于该时间的任务。格式为:%Y-%m-%dT%H:%m:%S%z;是否必传:否// endCreationTime: "",},},function (err, data) {if (err) {// 处理请求失败console.log(err);} else {// 处理请求成功console.log(data.Response);}},);}describeDocProcessJobList()
参数说明
cos.request 方法参数说明:
参数名称 | 参数描述 | 类型 | 是否必填 |
Method | 固定值:GET | String | 是 |
Url | 请求url,固定值 | String | 是 |
Key | 固定值:doc_jobs | String | 是 |
Query | 请求参数 | Object | 否 |
Query 参数说明:
参数名称 | 参数描述 | 类型 | 是否必填 |
tag | 任务的 Tag:DocProcess | String | 是 |
queueId | 拉取该队列 ID 下的任务,可在任务响应内容或控制台中获取 | String | 否 |
orderByTime | Desc 或者 Asc。默认为 Desc | String | 否 |
nextToken | 请求的上下文,用于翻页。上次返回的值 | String | 否 |
size | 拉取的最大任务数。默认为10。最大为100 | Number | 否 |
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 | 否 |
回调函数说明
function(err, data) { ... }
参数名称 | 参数描述 | 类型 |
err | Object | |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
- Response | Object |