有奖捉虫:行业应用 & 管理与支持文档专题 HOT

简介

本文档提供关于异步处理任务接口的相关的 API 概览以及 SDK 示例代码。
注意
需要 COS PHP SDK v2.4.0 及以上版本。旧版本可能存在 bug,使用时建议升级到 最新版本
API
操作名
操作描述
提交文档预览任务
用于提交一个文档预览任务
查询文档预览任务
查询指定的文档预览任务
拉取文档预览任务
拉取符合条件的文档预览任务

提交文档预览任务

功能说明

CreateDocProcessJobs 接口用于提交一个文档预览任务。
注意
使用此接口前,请确保已打开官网控制台中数据处理下的文档处理开关,否则会报错 doc bucket unbinded, bucket's host is unavailable
如需使用文档转 HTML 功能,可直接将请求参数置于 URL 后方,SDK 仅负责签名计算操作。

示例代码

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'schema' => 'https', //协议头部,默认为 http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->createDocProcessJobs(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Tag' => 'DocProcess', //任务的 Tag:DocProcess 固定值
// 'QueueId' => 'pd8e422a2ea134165a92f2012ea43****', //任务所在的队列 ID
'Input' => array(
'Object' => 'Append功能测试.pdf' //待操作的文件对象
),
'Operation' => array(
'DocProcess' => array(
'SrcType' => 'pdf', //源数据的后缀类型
'TgtType' => 'png', //转换输出目标文件类型
'SheetId' => 0, //表格文件参数,转换第 X 个表,默认为1
'StartPage' => 1, //从第 X 页开始转换,默认为1
'EndPage' => 3, //转换至第 X 页,默认为-1,即转换全部页
'ImageParams' => '', //转换后的图片处理参数
'DocPassword' => '', //Office 文档的打开密码
'Comments' => 0, //是否隐藏批注和应用修订,默认为 0
'PaperDirection' => 0, //表格文件转换纸张方向,默认为0
'Quality' => 100, //生成预览图的图片质量,取值范围 [1-100],默认值100
'Zoom' => 100, //预览图片的缩放参数,取值范围[10-200], 默认值100
),
'Output' => array(
'Region' => $region, //存储桶的地域
'Bucket' => 'examplebucket-1250000000', //存储结果的存储桶
'Object' => 'pic-${Page}.jpg', //输出文件路径
),
),
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
参数名称
类型
描述
是否必填
Bucket
String
存储桶名称,格式:BucketName-APPID
Operation
Array
操作规则
Tag
String
创建任务的 Tag,目前仅支持:DocProcess
Input
Array
待操作的文件对象
QueueId
String
任务所在的 队列 ID
Input 中的具体数据描述如下:
参数名称
类型
描述
是否必填
Object
String
文件在 COS 上的文件路径,Bucket 由 Host 指定
Operation 中的具体数据描述如下:
参数名称
类型
描述
是否必填
DocProcess
Array
当 Tag 为 DocProcess 时有效,指定该任务的参数
Output
Array
结果输出地址
DocProcess 中的具体数据描述如下:
参数名称
类型
描述
是否必填
srcType
String
源数据的后缀类型,当前文档转换根据 cos 对象的后缀名来确定源数据类型,当 cos 对象没有后缀名时,可以设置该值
tgtType
String
转换输出目标文件类型: jpg,转成 jpg 格式的图片文件;如果传入的格式未能识别,默认使用 jpg 格式 png,转成 png 格式的图片文件 pdf,转成 pdf 格式文件(暂不支持指定页数)
sheetId
Integer
表格文件参数,转换第 X 个表,默认为1;设置 SheetId 为0,即转换文档中全部表
startPage
Integer
从第 X 页开始转换;在表格文件中,一张表可能分割为多页转换,生成多张图片。StartPage 表示从指定 SheetId 的第 X 页开始转换。默认为1
endPage
Integer
转换至第 X 页;在表格文件中,一张表可能分割为多页转换,生成多张图片。EndPage 表示转换至指定 SheetId 的第 X 页。默认为-1,即转换全部页
imageParams
String
转换后的图片处理参数,支持 基础图片处理 所有处理参数,多个处理参数可通过 管道操作符 分隔,从而实现在一次访问中按顺序对图片进行不同处理
docPassword
String
Office 文档的打开密码,如果需要转换有密码的文档,请设置该字段
comments
Integer
是否隐藏批注和应用修订,默认为 0;0:隐藏批注,应用修订;1:显示批注和修订
paperDirection
Integer
表格文件转换纸张方向,0代表垂直方向,非0代表水平方向,默认为0
quality
Integer
生成预览图的图片质量,取值范围 [1-100],默认值100。 例:值为100,代表生成图片质量为100%
zoom
Integer
预览图片的缩放参数,取值范围[10-200], 默认值100。 例:值为200,代表图片缩放比例为200% 即放大两倍
Output 中的具体数据描述如下:
参数名称
类型
描述
是否必填
Region
String
存储桶的地域
Bucket
String
存储结果的存储桶
Object
String
输出文件路径

返回参数说明

参数名称
类型
描述
Code
String
错误码,只有 State 为 Failed 时有意义
Message
String
错误描述,只有 State 为 Failed 时有意义
JobId
String
新创建任务的 ID
Tag
String
新创建任务的 Tag:DocProcess
State
String
任务的状态,为 Submitted、Running、Success、Failed、Pause、Cancel 其中一个
CreationTime
String
任务的创建时间
QueueId
String
任务所属的队列 ID
Input
Array
该任务的输入文件路径
Operation
Array
该任务的规则

查询文档预览任务

功能说明

DescribeDocProcessJob 用于查询指定的文档预览任务。

示例代码

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'schema' => 'https', //协议头部,默认为 http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->describeDocProcessJob(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由 BucketName-Appid 组成,可以在 COS 控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Key' => 'examplejobid', // JobId
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

参数名称
类型
描述
Bucket
COS 存储桶名称
String
Key
创建任务的 ID
String

返回参数说明

参数名称
类型
描述
jobsDetail
记录任务的详细信息,响应参数参考 查询指定的文档转码任务API文档
Array

拉取文档预览任务

功能说明

DescribeDocProcessJobs 用于拉取符合条件的文档预览任务。

示例代码

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的 region 可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'schema' => 'https', //协议头部,默认为 http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->getDescribeDocProcessJobs(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在 COS 控制台查看 https://console.cloud.tencent.com/cos5/bucket
'QueueId' => 'pd8e422a2ea134165a92f2012ea43****', //拉取该队列 ID 下的任务
'Tag' => 'DocProcess', //任务的 Tag:DocProcess 固定值
// 'NextToken' => '143486', //请求的上下文,用于翻页。上次返回的值
// 'OrderByTime' => 'Desc', //Desc 或者 Asc。默认为 Desc
// 'Size' => 2, //拉取的最大任务数。默认为10。最大为100
// 'States' => 'All', //拉取该状态的任务,以,分割,支持多状态:All、Submitted、Running、Success、Failed、Pause、Cancel。默认为 All。
// 'StartCreationTime' => '2021-10-10T16:20:07+0800', //拉取创建时间大于该时间的任务
// 'EndCreationTime' => '2021-10-10T16:20:07+0800', //拉取创建时间小于该时间的任务
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

参数名称
类型
描述
是否必填
Bucket
String
COS 存储桶名称
QueueId
String
拉取该 队列 ID 下的任务
Tag
String
任务的 Tag:DocProcess
OrderByTime
String
Desc 或者 Asc,默认为 Desc
NextToken
String
请求的上下文,用于翻页,设置为上次返回的值
Size
Integer
拉取的最大任务数,默认为10,最大为100
States
String
拉取该状态的任务,以,分割,支持多状态:All、Submitted、Running、Success、Failed、Pause、Cancel,默认为 All
StartCreationTime
String
拉取创建时间大于该时间的任务,格式为:%Y-%m-%dT%H:%m:%S%z
EndCreationTime
String
拉取创建时间小于该时间的任务,格式为:%Y-%m-%dT%H:%m:%S%z

返回参数说明

参数名称
类型
描述
JobDetail
Array
记录任务列表,响应参数参考 拉取符合条件的文档转码任务API文档
nextToken
String
翻页的上下文 Token