功能描述
云查毒功能为异步请求方式,您可以通过本接口对云上的文件进行文件病毒(例如木马病毒、蠕虫病毒等)检测,然后通过查询病毒检测结果接口,查询病毒检测的结果。
授权说明
服务开通
使用限制
费用说明
如果文件属于 COS 上的低频存储类型,调用检测会产生 COS 低频数据取回费用。
不支持检测 COS 上的归档存储类型和深度归档存储类型的文件,此类型文件请先 恢复归档文件。
文件大小支持:文件 < 1GB。
文件支持格式:EXE、DLL、SCR、SYS、MSI、SWF、JAR、APPLETJAR、JS、VBS、HTML、BAT、WSF、PS1、HTM、MHT、HTA、CHM、LNK、DOC、DOCX、DOCX、DOTX、DOCM、DOTM、XLS、XLSX、XLSM、XLSB、XLTM、XLTX、XLAM、PPT、PPTX、POTX、PPSX、PPTM、POTM、PPSM、XML、RTF、PDF、ELF、 XML、MAC、VBE、3DMAX、ISO、CPIO、RPM、XZ、DEB。
支持检测压缩文件,例如:zip、7z、rar4、rar5、inno、cab、autoit、nsis、gz、tar、iso、mime、chm、jar、dmg、apk 等。
请求
请求示例
POST /virus/detect HTTP/1.1Host: <BucketName-APPID>.ci.<Region>.myqcloud.comDate: <GMT Date>Authorization: <Auth String>Content-Length: <length>Content-Type: application/xml<body>
说明
请求头
请求体
该请求操作的实现需要有如下请求体:
<Request><Input><Object></Object><Url></Url></Input><Conf><DetectType>Virus</DetectType><Callback></Callback></Conf></Request>
具体的数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
Request | 无 | 病毒检测的具体配置项。 | Container | 是 |
Container 类型 Request 的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
Input | Request | 需要检测的文件信息。 | Container | 是 |
Conf | Request | 检测规则配置。 | Container | 是 |
Container 类型 Input 的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
Object | Request.Input | 存储在 COS 存储桶中的病毒文件名称,例如在目录 test 中的文件 virus.doc,则文件名称为 test/virus.doc。 注意:Object 和 Url 只能选择其中一种。 | String | 是 |
Url | Request.Input | 病毒文件的链接地址,例如 http://examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/virus.doc。 注意:Object 和 Url 只能选择其中一种。 | String | 否 |
Container 类型 Conf 的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
DetectType | Request.Conf | 检测的病毒类型,当前固定为:Virus | String | 是 |
Callback | Request.Conf | 检测结果回调通知到您设置的地址,支持以 http:// 或者 https:// 开头的地址,例如:http://www.callback.com | String | 否 |
响应
响应头
响应体
该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:
<Response><JobsDetail><JobId></JobId><State></State><CreationTime></CreationTime><Object></Object></JobsDetail></Response>
具体的数据内容如下:
节点名称(关键字) | 父节点 | 描述 | 类型 |
Response | 无 | 病毒检测返回的具体响应内容。 | Container |
Container 节点 Response 的内容:
节点名称(关键字) | 父节点 | 描述 | 类型 |
JobsDetail | Response | 病毒检测任务的详细信息。 | Container |
Container 节点 JobsDetail 的内容:
节点名称(关键字) | 父节点 | 描述 | 类型 |
JobId | Response.JobsDetail | 本次病毒检测任务的 ID。 | String |
State | Response.JobsDetail | 病毒检测任务的状态,值为 Submitted(已提交检测)、Success(检测成功)、Failed(检测失败)、Auditing(检测中)其中一个 | String |
CreationTime | Response.JobsDetail | 病毒检测任务的创建时间。 | String |
Object | Response.JobsDetail | 本次检测的文件名称。 | String |
错误码
实际案例
请求
POST /virus/detect HTTP/1.1Authorization: q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0a1ICvR****&q-sign-time=1497530202;1497610202&q-key-time=1497530202;1497610202&q-header-list=&q-url-param-list=&q-signature=28e9a4986df11bed0255e97ff90500557e0e****Host: examplebucket-1250000000.ci.ap-beijing.myqcloud.comContent-Length: 166Content-Type: application/xml<Request><Input><Object>a.doc</Object></Input><Conf><DetectType>Virus</DetectType><Callback>http://callback.com/</Callback></Conf></Request>
响应
HTTP/1.1 200 OKContent-Type: application/xmlContent-Length: 230Connection: keep-aliveDate: Thu, 15 Jun 2017 12:37:29 GMTServer: tencent-cix-ci-request-id: NTk0MjdmODlfMjQ4OGY3XzYzYzhf****<Response><JobsDetail><JobId>ssb1ca9fc8a3ed11ea834c525400863904</JobId><State>Submitted</State><CreationTime>2021-07-07T12:12:12+0800</CreationTime><Object>a.doc</Object></JobsDetail></Response>