简介
简单查询功能是由 数据万象(Cloud Infinite,CI)提供的,数据万象将处理能力与 COS SDK 完全结合,您可以直接按照本篇文档指引进行使用。
本文档提供关于简单查询的相关 API 概览以及 SDK 示例代码。
注意:
COS 小程序 SDK 版本需要大于等于 v1.7.1。
API | 操作描述 |
可以根据已提取的文件元数据(包含文件名、标签、路径、自定义标签、文本等字段)查询和统计数据集内文件,支持逻辑关系表达方式。 |
简单查询
功能说明
可以根据已提取的文件元数据(包含文件名、标签、路径、自定义标签、文本等字段)查询和统计数据集内文件,支持逻辑关系表达方式。
使用示例
function datasetSimpleQuery() {// sdk引入以及初始化请参考:https://cloud.tencent.com/document/product/436/31953const config = {// 需要替换成您自己的存储桶信息AppId: '1250000000', // AppId,必须字段Region: 'COS_REGION', // 存储桶所在地域,必须字段 如 ap-beijing};const key = 'datasetquery/simple'; // 固定值const host = `${config.AppId}.ci.${config.Region}.myqcloud.com`;const url = `https://${host}/${key}`;const body = JSON.stringify({// 自定义数据集名称,同一个账户下唯一。;是否必传:是DatasetName: 'test-dataset-base',// 简单查询参数条件,可自嵌套。;是否必传:否// Query: {// // 操作运算符。枚举值: not:逻辑非。 or:逻辑或。 and:逻辑与。 lt:小于。 lte:小于等于。 gt:大于。 gte:大于等于。 eq:等于。 exist:存在性查询。 prefix:前缀查询。 match-phrase:字符串匹配查询。 nested:字段为数组时,其中同一对象内逻辑条件查询。;是否必传:是// Operation: 'and',// // 子查询的结构体。 只有当Operations为逻辑运算符(and、or、not或nested)时,才能设置子查询条件。 在逻辑运算符为and/or/not时,其SubQueries内描述的所有条件需符合父级设置的and/or/not逻辑关系。 在逻辑运算符为nested时,其父级的Field必须为一个数组类的字段(如:Labels)。 子查询条件SubQueries组的Operation必须为and/or/not中的一个或多个,其Field必须为父级Field的子属性。;是否必传:否// SubQueries: [{// Operation: '',// Field: '',// }],// Field: '',// Value: '',// },// 返回文件元数据的最大个数,取值范围为0200。 使用聚合参数时,该值表示返回分组的最大个数,取值范围为02000。 不设置此参数或者设置为0时,则取默认值100。;是否必传:否MaxResults: 100,// 排序字段列表。请参考字段和操作符的支持列表。 多个排序字段可使用半角逗号(,)分隔,例如:Size,Filename。 最多可设置5个排序字段。 排序字段顺序即为排序优先级顺序。;是否必传:是// Sort: 'CustomId',// 排序字段的排序方式。取值如下: asc:升序; desc(默认):降序。 多个排序方式可使用半角逗号(,)分隔,例如:asc,desc。 排序方式不可多于排序字段,即参数Order的元素数量需小于等于参数Sort的元素数量。例如Sort取值为Size,Filename时,Order可取值为asc,desc或asc。 排序方式少于排序字段时,未排序的字段默认取值asc。例如Sort取值为Size,Filename,Order取值为asc时,Filename默认排序方式为asc,即升序排列;是否必传:是Order: 'desc',// 聚合字段信息列表。 当您使用聚合查询时,仅返回聚合结果,不再返回匹配到的元信息列表。;是否必传:否// Aggregations: {// Operation: '',// Field: ''// },});cos.request({Method: 'POST', // 固定值,必须Key: key, // 必须Url: url, // 请求的url,必须Body: body, // 请求体参数,必须Headers: {// 设置请求体为 json,固定值,必须'Content-Type': 'application/json',// 设置响应体为json,固定值,必须Accept: 'application/json',},},function (err, data) {if (err) {// 处理请求失败console.log(err.code, err.message);} else {// 处理请求成功console.log(data);}});}datasetSimpleQuery()
参数说明
cos.request 方法参数说明:
参数名称 | 参数描述 | 类型 | 是否必填 |
Method | 固定值:POST | String | 是 |
Key | 固定值:datasetquery/simple | String | 是 |
Url | 请求 url,固定值 | String | 是 |
Body | String | 是 | |
ContentType | 设置请求体为 json,固定值 | String | 是 |
Accept | 设置响应体为 json,固定值 | String | 是 |
回调函数说明
function(err, data) { ... }
参数名称 | 参数描述 | 类型 |
err | Object | |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
- statusCode | 请求返回的 HTTP 状态码,例如200、403、404等 | Number |
- headers | 请求返回的头部信息 | Object |
- Aggregations | Array | |
- Files | Array | |
- RequestId | 请求 ID | String |
- NextToken | 翻页标记。 当文件总数大于设置的 MaxResults 时,用于翻页的 Token。 符合条件的文件信息未全部返回时,此参数才有值。 下一次列出文件信息时将此值作为 NextToken 传入,将后续的文件信息返回。 | String |
相关链接