YunkuPod 1.0.5

YunkuPod 1.0.5

许可证 MIT
发布最后发布2017年10月
SwiftSwift 版本3.0

yotao 维护。



YunkuPod 1.0.5

  • 作者:
  • yotao

/*
标题:够快云库 Swift SDK 使用说明
描述
作者:Brandon
日期:2016/03/03
机器人:noindex,nofollow
*/

够快云库 Swift SDK 使用说明




版本:1.0.1

创建:2015-06-23
修改时间:2016-03-03

安装

YunkuPod 可通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile:
...

pod 'YunkuPod'

参考

建议将项目编译产生的 YunkuSwiftSDK.framework 文件引用进项目,或者将项目作为 Library Project 引入,对于 iOS Application,使用 Headers/iOS 文件夹下的头文件,对于 OSX Application,则使用 Headers/OSX 的头文件。
...

###Swift
框架

  • 将 YunkuSwiftSDK.framework, CommonCrypto.framework 拖到 [Your Project]下
  • 确认 Project-> Build Phases,确认 Link Binary With Libraries 已添加 YunkuSwiftSDK.framework
  • 在 Build Phases 中添加一项 New Copy Files Phrase,选择 Destination 为 Frameworks,将项目中的 YunkuSwiftSDK.framework,CommonCrypto.framework 拖入进去
  • 在使用 SDK 的类的顶部添加 import YunkuSwiftSDK

Library Project

  • 将 YunkuSwiftSDK.xcodeproj 拖到 [Your Project]下
  • 确认 Project-> Build Phases,Target Dependencies 和 Link Binary With Libraries 已添加 YunkuSwiftSDK.framework
  • 在 Build Phases 中添加一项 New Copy Files Phrase,选择 Destination 为 Frameworks,将项目中的 YunkuSwiftSDK.framework,CommonCrypto.framework 拖入进去
  • 在使用 SDK 的类的顶部添加 import YunkuSwiftSDK

###Objective-C
框架

  • 将 YunkuSwiftSDK.framework 拖到 [Your Project]下
  • 确认 Project-> Build Phases,确认 Link Binary With Libraries 已添加 YunkuSwiftSDK.framework
  • 在 Build Phases 中添加一项 New Copy Files Phrase,选择 Destination 为 Frameworks,将项目中的 YunkuSwiftSDK.framework, CommonCrypto.framework 拖入进去
  • 在 Build Setting 中,将 Embeded Content Contains Swift Code 设置为 YES
  • 在使用 SDK 的类的顶部添加 #import <YunkuSwiftSDK/YunkuSwiftSDK-Swift.h>

Library Project

  • 将 YunkuSwiftSDK.xcodeproj 拖到 [Your Project]下
  • 确认 Project-> Build Phases,Target Dependencies 和 Link Binary With Libraries 已添加 YunkuSwiftSDK.framework
  • 在 Build Phases 中添加一项 New Copy Files Phrase,选择 Destination 为 Frameworks,按+号键,选择 YunkuSwiftSDK.framework, CommonCrypto.framework
  • 在 Build Setting 中,将 Embeded Content Contains Swift Code 设置为 YES
  • 在使用 SDK 的类的顶部添加 #import <YunkuSwiftSDK/YunkuSwiftSDK-Swift.h>

初始化

要使用云库 api,您需要有效的 CLIENT_ID 和 CLIENT_SECRET,以及获得云库后台管理账号。

##参数使用
以下使用到的方法中,如果是 string 类型的非必要参数,如果未传递,则传递 null

企业库管理( EntLibManager.swift

###构造方法
swift

EntLibManager(clientId:String,clientSecret:String,isEnt:Bool)

objc

[[EntLibManager alloc]initWithClientId:(NSString *)clientId clientSecret:(NSString *)clientSecret inEnt:BOOL] 

参数

参数 必须 类型 说明
clientId string 申请应用时分配的 AppKey
clientSecret string 申请应用时分配的 AppSecret
isEnt boolean 是否是企业账号登录

授权

swift

accessToken(username:String,password:String)

objc

[accessToken:(NSString*)username password:password]

参数

参数 必须 类型 说明
username string 用户名
password string 密码

返回结果

{
	access_token:
	expires_in:
	refresh_token:c
}
字段 类型 说明
access_token string 用于调用 access_token,接口获取授权后的 access token
expires_in int access_token 的有效期,Unix 时间戳
refresh_token string 用于刷新 access_token 的 refresh_token,有效期 1 个月

创建库

swift

create(orgName:String, orgCapacity:Int, 
storagePointName:String,  orgDesc:String) 

objc

create:(NSString *)orgName orgCapacity:(NSString *)orgCapacity storagePointName:(NSString *)storagePointName orgDesc:(NSString *)orgDesc orgLogo:(NSString *)orgLogo

参数

参数 必须 类型 说明
orgName string 库名称
orgCapacity int 库容量上限,单位字节,默认无上限
storagePointName string 库归属存储点名称,默认使用够快存储
orgDesc string 库描述
orgLogo string 库 logo

####数值参考
1T="1099511627776"
1G=“1073741824”;

返回结果

{
	org_id:    
	mount_id:
}
字段 类型 说明
org_id int 库 ID
mount_id int 库空间 id

获取库列表

getLibList()

参数

(无)

返回结果

{
'list':
    [
    	{
    		org_id : 库ID
    		org_name : 库名称
    		org_logo_url : 库图标url
    		size_org_total : 库空间总大小, 单位字节, -1表示空间不限制
    		size_org_use: 库已使用空间大小, 单位字节
    		mount_id: 库空间id
    	},
    	...
    ]
}

修改库信息

swift

set(orgId:Int,orgName:String, orgCapacity:String, orgDesc: String, orgLogo:String) 

objc

set:(NSInteger)orgId orgName:(NSString *)orgName orgCapacity:(NSString *)orgCapacity orgDes:(NSString *)orgDes orgLogo:(NSString *)orgLogo

参数

名称 必需 类型 说明
orgId int 库 id
orgName string 库名称
orgCapacity string 库容量限制,单位 B
orgDesc string 库描述
orgLogo string 库 logo

返回结果

正常返回 HTTP 200

####数值参考
1T="1099511627776"
1G=“1073741824”;


获取库信息

swift

getInfo(orgId:Int)

objc

getInfo:(NSInteger)orgId

参数

名称 必需 类型 说明
orgId int 库 id

返回结果

{
  info:
  {
    org_id : 库ID
    org_name : 库名称
    org_desc : 库描述
    org_logo_url : 库图标url
    size_org_total : 库空间总大小, 单位字节, -1表示空间不限制
    size_org_use: 库已使用空间大小, 单位字节
    mount_id: 库空间id
  }
} 

获取库授权

swift

bindLib(orgId:Int, title:String , linkUrl:String)

objc

bindLib:(NSInteger)orgId title:(NSString *)title linkUrl:(NSString *)linkUrl

参数

参数 必须 类型 说明
orgId int 库 ID
title string 标题(预留参数)
linkUrl string 链接(预留参数)

返回结果

{
	org_client_id:
	org_client_secret:
}
字段 类型 说明
org_client_id string 库授权 client_id
org_client_secret string 库授权 client_secret

org_client_secret 用于调用库文件相关 API 签名时的密钥


取消库授权

swift

unbindLib(orgClientId: String) 

objc

unbindLib:(NSString *)orgClientId;

参数

参数 必须 类型 说明
orgClientId string 库授权 client_id

返回结果

正常返回 HTTP 200

获取库成员列表

swift

getMembers(start:Int, size:Int, orgId:Int)

objc

getMembers:(NSInteger)start size:(NSInteger)size orgId:(NSInteger)orgId;

参数

参数 必须 类型 说明
orgId int 库 id
start int 分页开始位置,默认 0
size int 分页个数,默认 20

返回结果

{
	list:
	[
		{
			"member_id": 成员id,
			"out_id": 成员外部id,
			"account": 外部账号,
			"member_name": 成员显示名,
			"member_email": 成员邮箱,
			"state": 成员状态。1:已接受,2:未接受,
		},
		...
	],
	count: 成员总数
}

添加库成员

swift

addMembers(int orgId, int roleId, int[] memberIds) 

objc

addMembers:(NSInteger)orgId roleId:(NSInteger)roleId memberIds:(NSArray *)memberIds

参数

参数 必须 类型 说明
orgId int 库 id
roleId int 角色 id
memberIds array 需要添加的成员 id 数组

返回结果

正常返回 HTTP 200

修改库成员角色

swift

setMemberRole(orgId:Int, roleId:Int, memberIds:[Int]) 

objc

setMemberRole:(NSInteger)orgId roleId:(NSInteger)roleId memberIds:(NSArray *)memberIds

参数

参数 必须 类型 说明
orgId int 库 id
roleId int 角色 id
memberIds array 需要修改的成员 id 数组

返回结果

正常返回 HTTP 200

删除库成员

swift

delMember(orgId:Int, memberIds:[Int])

objc

delMember:(NSInteger)orgId memberIds:(NSArray *)memberIds

参数

参数 必须 类型 说明
orgId int 库 id
memberIds array 成员id数组

返回结果

正常返回 HTTP 200

获取库分组列表

getGroups(int orgId)

参数

参数 必须 类型 说明
orgId int 库 id

返回结果

{
	{
		"id": 分组id
		"name": 分组名称
		"role_id": 分组角色id, 如果是0 表示分组中的成员使用在该分组上的角色
	},
	...
}

库上添加分组

swift

addGroup(int orgId, int groupId, int roleId)

objc

addGroup:(NSInteger)orgId groupId:(NSInteger)groupId roleId:(NSInteger)roleId;

参数

参数 必须 类型 说明
orgId int 库 id
groupId int 分组id
roleId int 角色id,默认0:分组中的成员使用在该分组上的角色

返回结果

正常返回 HTTP 200

删除库上的分组

delGroup(int orgId, int groupId)

参数

参数 必须 类型 说明
orgId int 库 id
groupId int 分组id

返回结果

正常返回 HTTP 200

修改库上分组的角色

swift

setGroupRole(int orgId, int groupId, int roleId)

objc

setGroupRole:(NSInteger)orgId groupId:(NSInteger)groupId roleId:(NSInteger)roleId;

参数

参数 必须 类型 说明
orgId int 库 id
groupId int 分组id
roleId int 角色id,默认0:分组中的成员使用在该分组上的角色

返回结果

正常返回 HTTP 200

删除库

swift

destroy(String orgClientId)

objc

destroy:(NSString *)orgClientId;

参数

| 参数 | 必须 | 类型 | 说明 |
| orgClientId | 是 | string | 库授权client_id|

返回结果

正常返回 HTTP 200

企业管理(EntManager.swift

###构造方法

swift

EntManager(Username:String,Password:String, ClientId:String, ClientSecret:String)

objc
[[EntManager alloc]initWithUsername:(NSString *)username password:(NSString *)password clientId:(NSString *)clientId clientSecret:(NSString *)clientSecret]

参数

参数 必须 类型 说明
Username string 用户名
Password string 密码
ClientId string 申请应用时分配的 AppKey
ClientSecret string 申请应用时分配的 AppSecret

授权

swift

accessToken(isEnt:BOOL)

objc

accessToken:(BOOL)isEnt

参数

参数 必须 类型 说明
isEnt boolean 是否是企业账号登录

返回结果

{
	access_token:
	expires_in:
	refresh_token:
}
字段 类型 说明
access_token string 用于调用 access_token,接口获取授权后的 access token
expires_in int access_token 的有效期,Unix 时间戳
refresh_token string 用于刷新 access_token 的 refresh_token,有效期 1 个月

###获取角色

swift

getRoles() 

objc

getRoles

参数

(无)

返回结果

[
	{
		"id": 角色id,
		"name": 角色名称,
		},
	...
]

###获取成员

swift

getMembers(start:Int, size:Int)

objc

getMembers:(NSInteger)start size:(NSInteger)size orgId:(NSInteger)orgId;

参数

参数 必须 类型 说明
start int 记录开始位置,默认0
size int 返回条数,默认20

返回结果

{
	list:
	[
		{
			"member_id": 成员id,
			"out_id": 成员外部id,
			"account": 外部账号,
			"member_name": 成员显示名,
			"member_email": 成员邮箱,
			"state": 成员状态。1:已接受,2:未接受,
		},
		...
	],
	count: 成员总数
}

根据成员Id查询企业成员信息

getMemberById(int memberId)

参数

参数 必须 类型 说明
memberId int 成员id

返回结果

{
  "member_id": 成员id,
  "member_name": 成员显示名,
  "member_email": 成员邮箱,
  "out_id": 外部系统唯一id,
  "account": 外部系统登录帐号,
  "state": 成员状态。1:已接受,2:未接受
}

根据外部系统唯一id查询企业成员信息

getMemberByOutId(String outId)

参数

参数 必须 类型 说明
outId String 外部系统唯一id

返回结果

{
  "member_id": 成员id,
  "member_name": 成员显示名,
  "member_email": 成员邮箱,
  "out_id": 外部系统唯一id,
  "account": 外部系统登录帐号,
  "state": 成员状态。1:已接受,2:未接受
}

根据外部系统登录帐号查询企业成员信息

String getMemberByAccount(String account)

参数

参数 必须 类型 说明
account String 外部系统登录帐号

返回结果

{
  "member_id": 成员id,
  "member_name": 成员显示名,
  "member_email": 成员邮箱,
  "out_id": 外部系统唯一id,
  "account": 外部系统登录帐号,
  "state": 成员状态。1:已接受,2:未接受
}

查询库成员信息

swift
getMember(orgid:Int, type:MemberType, ids:[String])

objc
getMember:(NSInteger)orgId type:(enum MemberType)type ids:(NSArray *)ids;

参数

参数 必须 类型 说明
orgid int 库 id
type enum ACCOUNT,OUT_ID,MEMBER_ID
ids array 多个id数组

返回结果

	{
		"id(传入时的id))":{
			"member_id": 成员id,
			"out_id": 成员外部id,
			"account": 外部账号,
			"member_name": 成员显示名,
			"member_email": 成员邮箱
		},
		...
	}

根据成员Id查询企业成员信息

swift

getMemberById(memberId:Int)

objc

getMemberById:(NSInteger)memberId;

参数

参数 必须 类型 说明
memberId int 成员id

返回结果

{
  "member_id": 成员id,
  "member_name": 成员显示名,
  "member_email": 成员邮箱,
  "out_id": 外部系统唯一id,
  "account": 外部系统登录帐号,
  "state": 成员状态。1:已接受,2:未接受
}

根据外部系统唯一id查询企业成员信息

swift

getMemberByOutId(outId:String)

objc

getMemberByOutId:(NSString *)outId;

参数

参数 必须 类型 说明
outId String 外部系统唯一id

返回结果

{
  "member_id": 成员id,
  "member_name": 成员显示名,
  "member_email": 成员邮箱,
  "out_id": 外部系统唯一id,
  "account": 外部系统登录帐号,
  "state": 成员状态。1:已接受,2:未接受
}

根据外部系统登录帐号查询企业成员信息

swift

getMemberByAccount(account:String)

objc

getMemberByAccount:(NSString *)account;

参数

参数 必须 类型 说明
account String 外部系统登录帐号

返回结果

{
  "member_id": 成员id,
  "member_name": 成员显示名,
  "member_email": 成员邮箱,
  "out_id": 外部系统唯一id,
  "account": 外部系统登录帐号,
  "state": 成员状态。1:已接受,2:未接受
}

###获取分组

swift

getGroups() 

objc

getGroups

参数

(无)

返回结果

{
	"list":
	[
		{
			"id": 分组id,
			"name": 分组名称,
			"out_id": 外部唯一id,
			"parent_id": 上级分组id, 0为顶级分组
		}
	]
}	

分组成员列表

swift

getGroupMembers(int groupId, int start, int size, boolean showChild) 

objc

getGroupMembers:(NSInteger)groupId start:(NSInteger)start size:(NSInteger)size showChild:(BOOL)showChild;

参数

参数 必须 类型 说明
groupId int 分组id
start int 记录开始位置
size int 返回条数
showChild boolean [0,1] 是否显示子分组内的成员

返回结果

{
	list:
	[
		{
			"member_id": 成员id,
			"out_id": 成员外部id,
			"account": 外部账号,
			"member_name": 成员显示名,
			"member_email": 成员邮箱,
			"state": 成员状态。1:已接受,2:未接受,
		},
		...
	],
	count: 成员总数
}

###根据成员id获取成员个人库外链

swift

getMemberFileLink(memberId:Int, fileOnly:BOOL)

objc

getMemberFileLink:(NSInteger)memberId fileOnly:(BOOL)fileOnly;

参数

参数 必须 类型 说明
memberId int 成员id
fileOnly boolean 是否只返回文件,1只返回文件

返回结果

[
	{
	    "filename": 文件名或文件夹名,
	    "filesize": 文件大小,
		"link": 链接地址,
		"deadline": 到期时间戳 -1表示永久有效,
		"password": 是否加密, 1加密, 0无
	},
	...
]

添加或修改同步成员

swift

addSyncMember(oudId:String, memberName:String, account:String, memberEmail:String, memberPhone:String, password:String)

objc

addSyncMember:(NSString *)oudId memberName:(NSString *)memberName account:(NSString *)account memberEmail:(NSString *)memberEmail memberPhone:(NSString *)memberPhone password:(NSString *)password;

参数

参数 必须 类型 说明
oudId string 成员在外部系统的唯一id
memberName string 显示名称
account string 成员在外部系统的登录帐号
memberEmail string 邮箱
memberPhone string 联系电话
password string 如果需要由够快验证帐号密码,密码为必须参数

返回结果

HTTP 200

删除同步成员

swift

delSyncMember( members:[String])

objc

delSyncMember:(NSArray *)members;

参数

参数 必须 类型 说明
members array 成员在外部系统的唯一id数组

返回结果

HTTP 200

添加或修改同步分组

swift

addSyncGroup(outId:String, name:Sting, parentOutId:String)

objc

addSyncGroup:(NSString *)outId name:(NSString *)name parentOutId:(NSString *)parentOutId;

参数

参数 必须 类型 说明
outId string 分组在外部系统的唯一id
name string 显示名称
parentOutId string 如果分组在另一个分组的下级,需要指定上级分组唯一id,不传表示在顶层,修改分组时该字段无效

返回结果

HTTP 200

删除同步分组

swift

delSyncGroup(groups:[String])

objc

delSyncGroup:(NSArray *)groups;

参数

参数 必须 类型 说明
groups string 分组在外部系统的唯一id数组

返回结果

HTTP 200

添加同步分组的成员

swift

addSyncGroupMember(groupOutId:[String],  members:[String])

objc

addSyncGroupMember:(NSString *)groupOutId members:(NSArray *)members;

参数

参数 必须 类型 说明
groupOutId string 外部分组的唯一id,不传表示顶层
members array 成员在外部系统的唯一id数组

返回结果

HTTP 200

删除同步分组的成员

swift

delSyncGroupMember(groupOutId: String, members:[String])

objc

delSyncGroupMember:(NSString *)groupOutId members:(NSArray *)members;

参数

参数 必须 类型 说明
groupOutId string 外部分组的唯一id,不传表示顶层
members string 成员在外部系统的唯一id数组

返回结果

HTTP 200

企业文件管理(EntFileManager.swift

###构造方法

swift

EntFileManager(orgClientId: String, orgClientSecret: String);

objc

[[EntFileManager alloc]initWithOrgClientId:(NSString *)orgClientId orgClientSecret:(NSString *)orgClientSecret]

参数

参数 必须 类型 说明
orgClientId string 库授权 client_id
orgClientSecret string 库授权 client_secret

###获取文件列表

swift

getFileList( start:Int, fullPath:String)

objc

getFileList:(NSInteger)start fullPath:(NSString *)fullPath;

参数

名称 必需 类型 说明
start int 开始位置(每次返回100条数据)
fullPath string 文件的路径

返回结果

{
	count:
	list:
	[
		{
			hash:
			dir:
			fullpath:
			filename:
			filehash:
			filesize:
			create_member_name:
			create_dateline:
			last_member_name:
			last_dateline:
		},
		...
	]
}
字段 类型 说明
count int 文件总数
list Array 格式见下
字段 类型 说明
--- --- ---
hash string 文件唯一标识
dir int 是否文件夹,1是,0否
fullpath string 文件路径
filename string 文件名称
filehash string 文件内容hash,如果是文件夹,则为空
filesize long 文件大小,如果是文件夹,则为0
create_member_name string 文件创建人名称
create_dateline int 文件创建时间戳
last_member_name string 文件最后修改人名称
last_dateline int 文件最后修改时间戳

###获取更新列表

swift

getUpdateList( isCompare:BOOL, fetchDateline:Int64)

objc

getUpdateList:(BOOL)isCompare fetchDateline:(NSInteger)fetchDateline;

参数

名称 必需 类型 说明
mode string 更新模式,可不传,当需要返回已删除的文件时使用compare
fetchDateline int 13位时间戳,获取该时间后的数据,第一次获取用0

返回结果

字段 类型 说明
fetch_dateline int 当前返回数据的最大时间戳(13位精确到毫秒)
list Array 格式见下
字段 类型 说明
cmd int 当mode=compare 时才会返回cmd字段,0表示删除,1表示未删除
hash string 文件唯一标识
dir int 是否文件夹,1是,0否
fullpath string 文件路径
filename string 文件名称
filehash string 文件内容hash,如果是文件夹,则为空
filesize long 文件大小,如果是文件夹,则为0
create_member_name string 文件创建人名称
create_dateline int 文件创建时间戳
last_member_name string 文件最后修改人名称
last_dateline int 文件最后修改时间戳

###文件更新数量

swift

getUpdateCounts( beginDateline:Int64, endDateline:Int64, showDelete:BOOL)

objc

getUpdateCounts:(NSInteger)beginDateline endDateline:(NSInteger)endDateline showDelete:(BOOL)showDelete;

参数

名称 必需 类型 说明
beginDateline long 13位时间戳,开始时间
endDateline long 13位时间戳,结束时间
showDelete boolean 是否返回删除文件

返回结果

{
	count: 更新数量
}

###获取文件信息

swift

getFileInfo( fullPath: String,type:NetType)

objc

getFileInfo:(NSString *)fullPath type:NetType;

参数

名称 必需 类型 说明

| fullPath | 是 | string | 文件路径 |
| type | 是 | NetType | 网络类型 Default为外网,In为内容 |

返回结果

{
	hash:
	dir:
	fullpath:
	filename:
	filesize:
	create_member_name:
	create_dateline:
	last_member_name:
	last_dateline:
	uri:
}
字段 类型 说明
hash string 文件唯一标识
dir int 是否文件夹
fullpath string 文件路径
filename string 文件名称
filehash string 文件内容hash
filesize long 文件大小
create_member_name string 文件创建人
create_dateline int 文件创建时间戳(10位精确到秒)
last_member_name string 文件最后修改人
last_dateline int 文件最后修改时间戳(10位精确到秒)
uri string 文件下载地址

###创建文件夹
swift

createFolder( fullPath:String,opName:String)

objc

createFolder:(NSString *)fullPath opName:(NSString *)opName;

参数

参数 必须 类型 说明
fullPath string 文件夹路径
opName string 用户名称

返回结果

字段 类型 说明
hash string 文件唯一标识
fullpath string 文件夹的路径

###通过数据上传(50M以内文件)

swift

createFile(fullPath:String,
opName: String, data: NSData) 

objc

createFile:(NSString *)fullPath opName:(NSString *)opName data:(NSData *)data;

参数

参数 必须 类型 说明
fullPath string 文件路径
opName string 用户名称
data NSData 文件流

返回结果

字段 类型 说明
hash string 文件唯一标识
fullpath string 文件路径
filehash string 文件内容hash
filesize long 文件大小

###文件分块上传

swift

uploadByBlock(localPath:String,fullPath:String,opName:String,opId:Int,overWrite:BOOL,delegate: UploadCallBack)

objc

uploadByBlock:(NSString *)localPath fullPath:(NSString *)fullPath opName:(NSString *)opName opId:(NSInteger)opId overwrite:(BOOL)overwrite delegate:(id <UploadCallBack>)delegate;

参数

参数 必须 类型 说明
fullpath string 文件路径
opName string 创建人名称,如果指定了op_id,就不需要op_name,
opId int 创建人id,个人库默认是库拥有人id,如果创建人不是云库用户,可以用op_name代替,
localFilePath string 文件本地路径
overWrite boolean 是否覆盖同名文件,true为覆盖
callBack UploadCallBack 文件上传回调

###删除文件
swift

del( fullPaths: String, opName: String)

objc

del:(NSString *)fullPaths opName:(NSString *)opName;

参数

参数 必需 类型 说明
fullPaths string 文件路径,如果是多个文件用“|”符号隔开
opName string 用户名称

返回结果

正常返回 HTTP 200

###移动文件
swift

move( fullPath: String, destFullPath: String, opName: String)

objc

move:(NSString *)fullPath destFullPath:(NSString *)destFullPath opName:(NSString *)opName;

参数

参数 必需 类型 说明
fullPath string 要移动文件的路径
destFullPath string 移动后的路径
opName string 用户名称

返回结果

正常返回 HTTP 200

###获取文件链接
swift

link( fullPath: String, deadline:Int, authType: AuthType, password: String)

objc

link:(NSString *)fullPath deadline:(NSInteger)deadline authType:(enum AuthType)authType password:(NSString *)password;

参数

参数 必需 类型 说明
fullPath string 文件路径
deadline int 10位链接失效的时间戳 ,永久传-1
authtype enum 文件访问权限DEFAULT默认为预览,PREVIEW:预览,DOWNLOAD:下载、预览,UPLOAD:上传、下载、预览|
password string 密码,不过不设置密码,传null

返回结果

###发送消息
swift

sendmsg( title: String,
text: String, image: String, linkUrl: String, opName: String) 

objc

sendmsg:(NSString *)title text:(NSString *)text image:(NSString *)image linkUrl:(NSString *)linkUrl opName:(NSString *)opName;

参数

名称 必需 类型 说明
title string 消息标题
text string 消息正文
image string 图片url
linkUrl string 链接
opName string 用户名称

返回结果

正常返回 HTTP 200 

###获取当前库所有外链

swift

links( boolean fileOnly)

objc

links:(BOOL)fileOnly;

参数

名称 必需 类型 说明
fileOnly boolean 是否只返回文件,1只返回文件

返回结果

[
	{
	    "filename": 文件名或文件夹名,
	    "filesize": 文件大小,
		"link": 文件外链地址,
		"deadline": 到期时间戳 -1表示永久有效,
		"password": 是否加密, 1加密, 0无
	},
	...
]

###通过链接上传文件

swift

createFileByUrl(fullpath:String, opId:Int, opName:String, overwrite:Bool, url: String)

objc

createFileByUrl:(NSString *)fullPath opId:(NSInteger)opId opName:(NSString *)opName overwrite:(BOOL)overwrite fileUrl:(NSString *)fileUrl;

参数

名称 必需 类型 说明
fullpath string 文件路径
opId int 创建人id,个人库默认是库拥有人id,如果创建人不是云库用户,可以用op_name代替
opName string 创建人名称,如果指定了opId,就不需要opName
overwrite boolean 是否覆盖同名文件, true覆盖(默认) false不覆盖,文件名后增加数字标识
url string 需要服务端获取的文件URL

返回结果

正常返回 HTTP 200 

###WEB直接上传文件

swift

getUploadServers()

objc

getUploadServers

参数

(无)

返回结果

{
   "upload":
   [
      上传服务器地址 如:http://upload.domain.com,
     ...
   ]
}

SDK日志(Config.swift

###设置是否打印SDK日志
swift

static logPrint

objc

setLogPrint:(BOOL)value;

###设置打印日志的级别

swift

static logPrint

LogLevel.Info
LogLevel.Warning
LogLevel.Error

objc

setLogLevel:(enum LogLevel)value;

LogLevelInfo //info级别以上的所有日志
LogLevelWarning //warning级别以上的所有日志
LogLevelError //error级别的日志

常见错误

无法找到header '/usr/include/CommonCrypto/CommonCrypto.h'

这可能是本地没有这个文件,可以尝试更换成类似 “/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk/usr/include/CommonCrypto/CommonCrypto.h” 的路径,这个路径会根据不同环境变化,需要先确保能在机器上找到这个文件,然后将路径替换成你本地 CommonCrypto.h 文件的全路径