文件操作

文件上传

let localPath = Bundle.main.path(forResource: "cover", ofType: "png")!
FileManager.upload(filename: "datasource", localPath: filePath, categoryName: "Book", progressBlock: { progress in

    }) { (file, error) in

}
[BaaSFileManager uploadWithFilename:@"cover" localPath:localPath categoryName:@"Book" progressBlock:^(NSProgress * _Nullable progress) {

    } completion:^(BaaSFile * _Nullable file, NSError * _Nullable error) {

}];

参数说明

参数 类型 必填 说明
filename String Y 文件名称
localPath String Y 本地资源路径
categoryName String N 文件分类

返回结果

名称 类型 说明
file File 已上传的文件,详见 数据类型 小节
error NSError 错误信息

获取文件详情

let fileId = "5c98b065d575a97d5f878225"
let select = ["name", "created_by"]
let expand = ["created_by"]
FileManager.get(fileId, select: select, expand: expand) { (result, error) in

}
NString *fileId = @"5c98b065d575a97d5f878225";
NSArray *select = @[@"name", @"created_by"];
NSArray *expand = @[@"created_by"];
[BaaSFileManager get:fileId select:select expand:expand completion:^(BaaSFile * _Nullable file, NSError * _Nullable error) {

}];

参数说明

参数 类型 必填 说明
fileId String Y 文件 id
select Array N 指定筛选的字段,详见数据表 - 字段过滤章节
expand Array N 指定扩展的字段,详见数据表 - 字段扩展章节

返回结果

名称 类型 说明
file File 已上传的文件,详见 数据类型 小节
error NSError 错误信息

error 对象结构请参考错误处理和错误码

删除本文件

获取一个 File 对象实例后,该实例可以删除对应的文件,在知晓云服务器删除成功后,该实例并没有被 SDK 清除,建议开发自行清除。

file.delete() { (success, error) in

}
[file delete:^(BOOL success, NSError * _Nullable error) {

}];

返回结果

名称 类型 说明
success Bool 是否删除成功
error NSError 错误信息

error 对象结构请参考错误处理和错误码

删除多个文件

FileManager.delete(["5c98aed0d575****5f878224", "5c98aed0d575****6e1ace9b"]) { (success, error) in

}
[BaaSFileManager delete:@[@"5c98aed0d5****7d5f878224", @"5c98aed0d575****6e1ace9b"] completion:^(BOOL success, NSError * _Nullable error) {

}];

参数说明

参数 类型 必填 说明
fileId Array Y 需要删除的文件 id

返回结果

名称 类型 说明
success Bool 是否删除成功
error NSError 错误信息

error 对象结构请参考错误处理和错误码

查询,获取文件列表

文件查询与数据表查询方法一致,但只支持以下指定字段的筛选

支持字段 类型 说明
id String 文件 id
name String 文件名
size Integer 文件大小,以字节为单位
category_id String 文件分类 id
category_name String 文件分类名
created_at Integer 创建时间 (格式为 unix 时间戳)

排序

文件查询排序与数据表排序方法一致,但只支持对以下指定字段进行排序

支持字段 类型 说明
name String 文件名
size Int 文件大小,以字节为单位
created_at TimeInterval 文件上传时间

分页

文件查询排序与数据表分页方法一致

获取文件分类列表

FileManager.getCategoryList() { (result, error) in

}
[BaaSFileManager getCategoryListWithQuery:nil completion:^(BaaSFileCategoryListResult * _Nullable listResult, NSError * _Nullable) {

}];

参数说明

参数 类型 必填 说明
query Query N 查询条件

返回结果

名称 类型 说明
listResult FileCategoryListResult 文件分类列表结果,详见 数据类型 小节
error NSError 错误信息

error 对象结构请参考错误处理和错误码

获取分类下的文件

FileManager.find(categoryId: "5ca489bb8c374f5039a8****") { (result, error) in

}
[BaaSFileManager findWithCategoryId:@"5ca489bb8c374f5039a8****" query:nil completion:^(BaaSFileListResult * _Nullable listResult, NSError * _Nullable error) {

}];

参数说明

参数 类型 必填 说明
categoryID String Y 文件分类 ID
query Query N 查询条件

返回结果

名称 类型 说明
listResult FileListResult 文件列表结果,详见 数据类型 小节
error NSError 错误信息

error 对象结构请参考错误处理和错误码

如需对分类下的文件进行更多条件的筛选,可使用 File 的查询接口

查询,获取分类列表

文件分类查询与数据表查询方法一致,但只支持以下指定字段的筛选:

支持字段 类型 说明
id String 文件分类 ID
name String 文件分类名

排序

文件分类查询排序与数据表排序方法一致,但只支持对以下指定字段进行排序:

支持字段 描述
name 文件名
created_at 文件创建时间

分页

文件分类查询排序与数据表分页方法一致。

数据类型

File

属性 类型 说明
id String 文件 Id
mimeType String 文件类型
name String 文件名
cdnPath String cdn 路径
size Int 文件大小
category FileCategory 文件分类
localPath String 本地路径
createdAt TimeInterval 创建日期

FileCategory

FileCategory 表示文件所属的分类。

属性 类型 说明
Id String 分类 Id
mimeType String 文件类型
name String 分类名
files Int 该分类的文件数量
updatedAt TimeInterval 更新日期
createdAt TimeInterval 创建日期

FileListResult

FileListResult 表示一次查询数据库所返回的文件列表以及元数据。

属性 类型 说明
limit Int 返回文件的最大个数
offset Int 返回文件的起始偏移值
totalCount Int 实际返回的文件总数
files Array 文件列表,每个元素为 File 类型

FileCategoryListResult

FileCategoryListResult 表示一次查询数据库所返回的文件分类列表以及元数据。

属性 类型 说明
limit Int 返回文件分类的最大个数
offset Int 返回文件分类的起始偏移值
totalCount Int 实际返回的文件分类总数
fileCategorys Array 文件分类列表,每个元素为 FileCategory 类型

results matching ""

    powered by

    No results matching ""