有奖捉虫:云通信与企业服务文档专题,速来> HOT

简介

本文档提供关于搜索文件/目录的 API 概览以及 SDK 示例代码。
API
操作描述
用于搜素目录与文件
用于继续获取搜索结果
用于删除搜索任务

SDK API 参考

SDK 所有接口的具体参数与方法说明,请参见 SDK API 参考

搜素目录与文件

功能说明

初始化搜索,可能会返回一定量的搜索结果。

示例代码

QCloudSMHInitiateSearchRequest *req = [QCloudSMHInitiateSearchRequest new];
// 媒体库 ID,必选参数
req.libraryId = @"libraryId"
// 用户身份识别,当访问令牌对应的权限为管理员权限且申请访问令牌时的用户身份识别为空时用来临时指定用户身份,详情请参阅生成访问令牌接口
req.userId = self.userModel.userId;
// 空间 ID,如果媒体库为单租户模式,则该参数固定为连字符(-);如果媒体库为多租户模式,则必须指定该参数
req.spaceId = @"spaceId";
// 搜索范围,指定搜索的目录,如搜索根目录可指定为空字符串、“/”或不指定该字段
req.scope = scopeDir.totalPath;
// 搜索关键字,可使用空格分隔多个关键字,关键字之间为“或”的关系并优先展示匹配关键字较多的项目;
req.keyword = @"keyWord";
// 搜索类型,字符串或字符串数组 QCloudSMHSearchType
req.searchTypes = @[@(type)];
[req setFinishBlock:^(QCloudSMHSearchListInfo *_Nullable result, NSError *_Nullable error) {

}];
[[QCloudSMHService defaultSMHService] initSearch:req];

继续获取搜索结果

功能说明

继续获取搜索结果。

示例代码

QCloudSMHResumeSearchRequest *req = [QCloudSMHResumeSearchRequest new];
// 媒体库 ID,必选参数
req.libraryId = self.userModel.libraryId;
// 空间 ID,如果媒体库为单租户模式,则该参数固定为连字符(-);如果媒体库为多租户模式,则必须指定该参数
req.spaceId = scopeDir.teamInfo.spaceId;
// 用户身份识别,当访问令牌对应的权限为管理员权限且申请访问令牌时的用户身份识别为空时用来临时指定用户身份,详情请参阅生成访问令牌接口
req.userId = self.userModel.userId;
// 搜索任务 ID 初始化搜索时返回
req.searchId = searchId;
// 分页标识,创建搜索任务时或继续获取搜索结果时返回的 nextMarker 字段;
req.nextMarker = nextMarker;
[req setFinishBlock:^(QCloudSMHSearchListInfo *_Nullable result, NSError *_Nullable error) {

}];
[[QCloudSMHService defaultSMHService] resumeSearch:req];

删除搜索

功能说明

用于删除搜索任务。

示例代码

QCloudSMHAbortSearchRequest *req = [QCloudSMHAbortSearchRequest new];
// 媒体库 ID,必选参数
req.libraryId = self.userModel.libraryId;
// 空间 ID,如果媒体库为单租户模式,则该参数固定为连字符(-);如果媒体库为多租户模式,则必须指定该参数
req.spaceId = scopeDir.teamInfo.spaceId;
// 用户身份识别,当访问令牌对应的权限为管理员权限且申请访问令牌时的用户身份识别为空时用来临时指定用户身份,详情请参阅生成访问令牌接口
req.userId = self.userModel.userId;
// 搜索任务 ID
req.searchId = @"searchId";
[req setFinishBlock:^(QCloudSMHSearchListInfo *_Nullable result, NSError *_Nullable error) {
if (error) {
[liveData postError:error];
return;
} else {
[liveData postValueAndComplete:searchId];
}
}];
[[QCloudSMHService defaultSMHService] abortSearch:req];