说明:
关于文章中出现的 SecretId、SecretKey、Bucket 等名称的含义和获取方式请参考:CSP术语信息
Bucket操作
Head Bucket
功能说明
Head Bucket 请求可以确认是否存在该 Bucket,是否有权限访问,Head 的权限与 Read 一致。
操作方法原型
调用 Head Bucket 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE' /* 必须 */
};
cos.headBucket(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| BucketExist | Bucket 是否存在 | Boolean |
| BucketAuth | 是否拥有该 Bucket 的权限 | Boolean |
Get Bucket
功能说明
Get Bucket 请求等同于 List Object 请求,可以列出该 Bucket 下部分或者所有 Object,发起该请求需要拥有 Read 权限。
操作方法原型
调用 Get Bucket 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Prefix : 'STRING_VALUE', /* 非必须 */
Delimiter : 'STRING_VALUE', /* 非必须 */
Marker : 'STRING_VALUE', /* 非必须 */
MaxKeys : 'STRING_VALUE', /* 非必须 */
EncodingType : 'STRING_VALUE', /* 非必须 */
};
cos.getBucket(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Prefix | 前缀匹配,用来规定返回的文件前缀地址 | String | 否 |
| Delimiter | 定界符为一个符号,如果有 Prefix,则将 Prefix 到 delimiter 之间的相同路径归为一类,定义为Common Prefix,然后列出所有 Common Prefix。如果没有 Prefix,则从路径起点开始 | String | 否 |
| Marker | 默认以 UTF-8 二进制顺序列出条目,所有列出条目从marker开始 | String | 否 |
| MaxKeys | 单次返回最大的条目数量,默认 1000 | String | 否 |
| EncodingType | 规定返回值的编码方式 | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| CommonPrefixes | 将 Prefix 到 delimiter 之间的相同路径归为一类,定义为 Common Prefix | Array |
| Prefix | 前缀名称 | String |
| Name | Bucket 名字 | String |
| Prefix | 前缀匹配,用来规定返回的文件前缀地址 | String |
| Marker | 默认以 UTF-8 二进制顺序列出条目,所有列出条目从 marker 开始 | String |
| MaxKeys | 单次返回最大的条目数量 | String |
| IsTruncated | 返回条目是否被截断,'true' 或者 'false' | String |
| NextMarker | 假如返回条目被截断,则返回 NextMarker 就是下一个条目的起点 | String |
| Encoding-Type | 编码类型,作用于Delimiter,Marker,Prefix,NextMarker,Key | String |
| Contents | 元数据信息 | Array |
| ETag | 文件的 SHA-1 算法校验值 | String |
| Size | 文件大小,单位 Byte | String |
| Key | Object 名称 | String |
| LastModified | Object 最后修改时间 | String |
| Owner | Bucket 所有者信息 | Object |
| ID | Bucket 拥有者的 UID 信息 | String |
Put Bucket
功能说明
Put Bucket 请求可以在指定账号下创建一个 Bucket。
操作方法原型
调用 Put Bucket 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
ACL : 'STRING_VALUE', /* 非必须 */
GrantRead : 'STRING_VALUE', /* 非必须 */
GrantWrite : 'STRING_VALUE', /* 非必须 */
GrantFullControl : 'STRING_VALUE' /* 非必须 */
};
cos.putBucket(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| ACL | 允许用户自定义文件权限。有效值:private,public-read默认值:private。 | String | 否 |
| GrantRead | 赋予被授权者读的权限,格式 x-cos-grant-read: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID"。 | String | 否 |
| GrantWrite | 赋予被授权者写的权限,格式 x-cos-grant-write: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID"。 | String | 否 |
| GrantFullControl | 赋予被授权者读写权限,格式 x-cos-grant-full-control: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID"。 | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| Location | 创建成功后,Bucket 的操作地址 | String |
Delete Bucket
功能说明
Delete Bucket 请求可以在指定账号下删除 Bucket,删除之前要求 Bucket为空。
操作方法原型
调用 Delete Bucket 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE' /* 必须 */
};
cos.deleteBucket(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| DeleteBucketSuccess | 删除是否成功 | Boolean |
Get Bucket ACL
功能说明
使用 API 读取 Bucket 的 ACL 表,只有所有者有权操作。
操作方法原型
调用 Get Bucket ACL 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE' /* 必须 */
};
cos.getBucketAcl(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| Owner | 标识资源的所有者 | Object |
| uin | 用户QQ号 | String |
| AccessControlList | 被授权者信息与权限信息 | Object |
| Grant | 具体的授权信息 | Array |
| Permission | 权限信息,枚举值:READ,WRITE,FULL_CONTROL | String |
| Grantee | 被授权者资源信息 | Object |
| uin | 被授权者的 QQ 号码或者 'anonymous' | String |
| Subaccount | 子账户 QQ 账号 | String |
Put Bucket ACL
功能说明
使用 API 写入 Bucket 的 ACL 表,Put Bucket ACL 是一个覆盖操作,传入新的 ACL 将覆盖原有 ACL。只有所有者有权操作。
操作方法原型
调用 Put Bucket ACL 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
ACL : 'STRING_VALUE', /* 非必须 */
GrantRead : 'STRING_VALUE', /* 非必须 */
GrantWrite : 'STRING_VALUE', /* 非必须 */
GrantFullControl : 'STRING_VALUE' /* 非必须 */
};
cos.putBucketAcl(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| ACL | 允许用户自定义文件权限。有效值:private,public-read默认值:private。 | String | 否 |
| GrantRead | 赋予被授权者读的权限,格式 x-cos-grant-read: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID"。 | String | 否 |
| GrantWrite | 赋予被授权者写的权限,格式 x-cos-grant-write: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID"。 | String | 否 |
| GrantFullControl | 赋予被授权者读写权限,格式 x-cos-grant-full-control: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID"。 | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| BucketGrantSuccess | 授权是否成功 | Boolean |
Get Bucket CORS
功能说明
Get Bucket CORS 实现跨域访问读取。
操作方法原型
调用 Get Bucket CORS 操作
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE' /* 必须 */
};
cos.getBucketCors(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| CORSRule | 配置的信息集合 | Array |
| AllowedMethod | 允许的 HTTP 操作,枚举值:Get,Put,Head,Post,Delete | Array |
| AllowedOrigin | 允许的访问来源,支持『 * 』通配符 | Array |
| AllowedHeader | 在发送 OPTIONS 请求时告知服务端,接下来的请求可以使用哪些自定义的 HTTP 请求头部 | Array |
| ExposeHeader | 设置浏览器可以接收到的来自服务器端的自定义头部信息 | Array |
| MaxAgeSeconds | 设置 OPTIONS 请求得到结果的有效期 | String |
| ID | 规则名称 | String |
Put Bucket CORS
功能说明
Put Bucket CORS 实现跨域访问读写。
操作方法原型
调用 Put Bucket CORS 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
CORSRules : [
{
ID : 'STRING_VALUE', /* 非必须 */
AllowedMethods: [ /* 必须 */
'STRING_VALUE',
...
],
AllowedOrigins: [ /* 必须 */
'STRING_VALUE',
...
],
AllowedHeaders: [ /* 非必须 */
'STRING_VALUE',
...
],
ExposeHeaders: [ /* 非必须 */
'STRING_VALUE',
...
],
MaxAgeSeconds: 'STRING_VALUE' /* 非必须 */
},
....
]
};
cos.putBucketCors(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| CORSRules | 跨域规则集合 | Array | 否 |
| ID | 规则名称 | String | 否 |
| AllowedMethods | 允许的HTTP操作,枚举值:Get,Put,Head,Post,Delete | Array | 是 |
| AllowedOrigins | 允许的访问来源,支持『 * 』通配符,协议,端口和域名必须一致 | Array | 是 |
| AllowedHeaders | 在发送 OPTIONS 请求时告知服务端,接下来的请求可以使用哪些自定义的 HTTP 请求头部,支持『 * 』通配符 | Array | 否 |
| ExposeHeaders | 设置浏览器可以接收到的来自服务器端的自定义头部信息 | Array | 否 |
| MaxAgeSeconds | 设置 OPTIONS 请求得到结果的有效期 | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| PutBucketCorsSuccess | 设置Bucket CORS 是否成功 | Boolean |
Delete Bucket CORS
功能说明
Delete Bucket CORS 接口请求实现删除跨域访问配置信息。
操作方法原型
调用 Delete Bucket CORS 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE' /* 必须 */
};
cos.deleteBucketCors(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| DeleteBucketCorsSuccess | 删除 Bucket CORS 是否成功 | Boolean |
Get Bucket Location
功能说明
Get Bucket Location 接口获取 Bucket 所在地域信息,只有 Bucket 所有者有权限读取信息。
操作方法原型
调用 Get Bucket Location 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE' /* 必须 */
};
cos.getBucketLocation(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| LocationConstraint | Bucket 所在区域,枚举值:china-east,china-south,china-north,china-west,singapore | String |
Object操作
Head Object
功能说明
Head Object 请求可以取回对应 Object 的元数据,Head的权限与 Get 的权限一致。
操作方法原型
调用 Head Object 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
IfModifiedSince : 'STRING_VALUE' /* 非必须 */
};
cos.headObject(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
| IfModifiedSince | 当 Object 在指定时间后被修改,则返回对应 Object 元信息 | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| x-cos-object-type | 用来表示object是否可以被追加上传,枚举值:normal或者appendable | String |
| x-cos-storage-class | Object的存储级别,枚举值:Standard,Standard_IA,Nearline | String |
| x-cos-meta- * | 用户自定义的元数据 | String |
| NotModified | 如果请求时带有 IfModifiedSince ,且文件未被修改,则为 true | Boolean |
Get Object
功能说明
Get Object 请求可以将一个文件(Object)下载至本地。该操作需要对目标 Object 具有读权限或目标 Object 对所有人都开放了读权限(公有读)。
操作方法原型
调用 Get Object 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
ResponseContentType : 'STRING_VALUE', /* 非必须 */
ResponseContentLanguage : 'STRING_VALUE', /* 非必须 */
ResponseExpires : 'STRING_VALUE', /* 非必须 */
ResponseCacheControl : 'STRING_VALUE', /* 非必须 */
ResponseContentDisposition : 'STRING_VALUE', /* 非必须 */
ResponseContentEncoding : 'STRING_VALUE', /* 非必须 */
Range : 'STRING_VALUE', /* 非必须 */
IfModifiedSince : 'STRING_VALUE', /* 非必须 */
Output : 'STRING_VALUE' || 'WRITE_STRING' /* 必须 */
};
cos.getObject(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | String | 文件名称 | 是 |
| ResponseContentType | 设置返回头部中的 Content-Type 参数 | String | 否 |
| ResponseContentLanguage | 设置返回头部中的 Content-Language 参数 | String | 否 |
| ResponseExpires | 设置返回头部中的 Content-Expires 参数 | String | 否 |
| ResponseCacheControl | 设置返回头部中的 Cache-Control 参数 | String | 否 |
| ResponseContentDisposition | 设置返回头部中的 Content-Disposition 参数 | String | 否 |
| ResponseContentEncoding | 设置返回头部中的 Content-Encoding 参数 | String | 否 |
| Range | RFC 2616 中定义的指定文件下载范围,以字节(bytes)为单位 | String | 否 |
| IfModifiedSince | 如果文件修改时间晚于指定时间,才返回文件内容 | String | 否 |
| Output | 需要输出的文件路径或者一个写流 | String / WriteStream | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| x-cos-object-type | 用来表示object是否可以被追加上传,枚举值:normal或者appendable | String |
| x-cos-storage-class | Object的存储级别,枚举值:Standard,Standard_IA,Nearline | String |
| x-cos-meta- * | 用户自定义的元数据 | String |
| NotModified | 如果请求时带有 IfModifiedSince ,且文件未被修改,则为 true | Boolean |
Put Object
功能说明
Put Object 请求可以将一个文件(Object)上传至指定 Bucket。
注意:
Key(文件名)不能以
/结尾,否则会被识别为文件夹 。
操作方法原型
调用 Put Object 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
CacheControl : 'STRING_VALUE', /* 非必须 */
ContentDisposition : 'STRING_VALUE', /* 非必须 */
ContentEncoding : 'STRING_VALUE', /* 非必须 */
ContentLength : 'STRING_VALUE', /* 必须 */
ContentType : 'STRING_VALUE', /* 非必须 */
Expect : 'STRING_VALUE', /* 非必须 */
Expires : 'STRING_VALUE', /* 非必须 */
ContentSha1 : 'STRING_VALUE', /* 非必须 */
ACL : 'STRING_VALUE', /* 非必须 */
GrantRead : 'STRING_VALUE', /* 非必须 */
GrantWrite : 'STRING_VALUE', /* 非必须 */
GrantFullControl : 'STRING_VALUE', /* 非必须 */
'x-cos-meta-*' : 'STRING_VALUE', /* 非必须 */
Body: fs.createReadStream('./a.zip'), /* 必须 */
onProgress: function (progressData) {
console.log(progressData);
},
};
cos.putObject(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
| CacheControl | RFC 2616 中定义的缓存策略,将作为 Object 元数据保存 | String | 否 |
| ContentDisposition | RFC 2616 中定义的文件名称,将作为 Object 元数据保存 | String | 否 |
| ContentEncoding | RFC 2616 中定义的编码格式,将作为 Object 元数据保存 | String | 否 |
| ContentLength | RFC 2616 中定义的 HTTP 请求内容长度(字节) | String | 是 |
| ContentType | RFC 2616 中定义的内容类型(MIME),将作为 Object 元数据保存 | String | 否 |
| Expect | 当使用 Expect: 100-continue 时,在收到服务端确认后,才会发送请求内容 | String | 否 |
| Expires | RFC 2616 中定义的过期时间,将作为 Object 元数据保存 | String | 否 |
| ContentSha1 | RFC 3174 中定义的 160-bit 内容 SHA-1 算法校验值 | String | 否 |
| ACL | 允许用户自定义文件权限,有效值:private,public-read | String | 否 |
| GrantRead | 赋予被授权者读的权限,格式x-cos-grant-read: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID" | String | 否 |
| GrantWrite | 赋予被授权者写的权限,格式x-cos-grant-write: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID" | String | 否 |
| GrantFullControl | 赋予被授权者读写权限,格式x-cos-grant-full-control: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID" | String | 否 |
| x-cos-meta- * | 允许用户自定义的头部信息,将作为 Object 元数据返回。大小限制2K。 | String | 否 |
| Body | 传入文件路径或文件流 | String/ Stream | 是 |
| onProgress | 进度回调函数,回调是一个对象,包含进度信息 | Function | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| ETag | 返回文件的 MD5 算法校验值。ETag 的值可以用于检查 Object 的内容是否发生变化 | String |
Delete Object
功能说明
Delete Object 请求可以将一个文件(Object)删除。
操作方法原型
调用 Delete Object 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE' /* 必须 */
};
cos.deleteObject(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| DeleteObjectSuccess | 删除文件是否成功 | Boolean |
| BucketNotFound | 如果找不到指定的 Bucket,则为 true | Boolean |
Options Object
功能说明
Options Object 请求实现跨域访问的预请求。即发出一个 OPTIONS 请求给服务器以确认是否可以进行跨域操作。
操作方法原型
调用 Options Object 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
Origin : 'STRING_VALUE', /* 必须 */
AccessControlRequestMethod : 'STRING_VALUE', /* 必须 */
AccessControlRequestHeaders : 'STRING_VALUE' /* 非必须 */
};
cos.optionsObject(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
| Origin | 模拟跨域访问的请求来源域名 | String | 是 |
| AccessControlRequestMethod | 模拟跨域访问的请求HTTP方法 | String | 是 |
| AccessControlRequestHeaders | 模拟跨域访问的请求头部 | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| AccessControlAllowOrigin | 模拟跨域访问的请求来源域名,当来源不允许的时候,此Header不返回 | String |
| AccessControlAllowMethods | 模拟跨域访问的请求HTTP方法,当请求方法不允许的时候,此Header不返回 | String |
| AccessControlAllowHeaders | 模拟跨域访问的请求头部,当模拟任何请求头部不允许的时候,此Header不返回该请求头部 | String |
| AccessControlExposeHeaders | 跨域支持返回头部,用逗号区分 | String |
| AccessControlMaxAge | 设置 OPTIONS 请求得到结果的有效期 | String |
Get Object ACL
功能说明
Get Object ACL 接口实现使用 API 读取 Object 的 ACL 表,只有所有者有权操作。
操作方法原型
调用 Get Object ACL 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE' /* 必须 */
};
cos.getObjectAcl(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| Owner | 标识资源的所有者 | Object |
| uin | 用户QQ号 | String |
| AccessControlList | 被授权者信息与权限信息 | Object |
| Grant | 具体的授权信息 | Array |
| Permission | 权限信息,枚举值:READ,WRITE,FULL_CONTROL | String |
| Grantee | 被授权者资源信息 | Object |
| uin | 被授权者的 QQ 号码或者 'anonymous' | String |
| Subaccount | 子账户 QQ 账号 | String |
Put Object ACL
功能说明
Put Object ACL使用 API 写入 Object 的 ACL 表。
操作方法原型
调用 Put Object ACL 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
ACL : 'STRING_VALUE', /* 非必须 */
GrantRead : 'STRING_VALUE', /* 非必须 */
GrantWrite : 'STRING_VALUE', /* 非必须 */
GrantFullControl : 'STRING_VALUE' /* 非必须 */
};
cos.putObjectAcl(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
| ACL | 允许用户自定义文件权限。有效值:private,public-read默认值:private。 | String | 否 |
| GrantRead | 赋予被授权者读的权限,格式 x-cos-grant-read: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID"。 | String | 否 |
| GrantWrite | 赋予被授权者写的权限,格式 x-cos-grant-write: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID"。 | String | 否 |
| GrantFullControl | 赋予被授权者读写权限,格式 x-cos-grant-full-control: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID"。 | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
Delete Multiple Object
功能说明
Delete Multiple Object 请求实现批量删除文件,最大支持单次删除 1000 个文件。对于返回结果,CSP 提供 Verbose 和 Quiet 两种结果模式。Verbose 模式将返回每个 Object 的删除结果;Quiet 模式只返回报错的 Object 信息。
操作方法原型
调用 Delete Multiple Object 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Quiet : 'BOOLEAN_VALUE', /* 非必须 */
Objects : [
{
Key : 'STRING_VALUE' /* 必须 */
}
]
};
cos.deleteMultipleObject(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Quiet | 布尔值,这个值决定了是否启动Quiet模式,True启动Quiet模式,False启动Verbose模式,默认False | Boolean | 否 |
| Objects | 要删除的文件列表 | Array | 否 |
| Key | 要删除的文件名称 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| Deleted | 说明本次删除的成功 Object 信息 | Array |
| Key | Object 的名称 | String |
| Error | 说明本次删除的失败 Object 信息 | Array |
| Key | Object 的名称 | String |
| Code | 删除失败的错误码 | String |
| Message | 删除错误信息 | String |
分块上传操作
Initiate Multipart Upload
功能说明
Initiate Multipart Upload 请求实现初始化分片上传,成功执行此请求以后会返回 Upload ID 用于后续的 Upload Part 请求。
操作方法原型
调用 Initiate Multipart Upload 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
CacheControl : 'STRING_VALUE', /* 非必须 */
ContentDisposition : 'STRING_VALUE', /* 非必须 */
ContentEncoding : 'STRING_VALUE', /* 非必须 */
ContentType : 'STRING_VALUE', /* 非必须 */
Expires : 'STRING_VALUE', /* 非必须 */
ACL : 'STRING_VALUE', /* 非必须 */
GrantRead : 'STRING_VALUE', /* 非必须 */
GrantWrite : 'STRING_VALUE', /* 非必须 */
GrantFullControl : 'STRING_VALUE', /* 非必须 */
StorageClass : 'STRING_VALUE', /* 非必须 */
'x-cos-meta-*' : 'STRING_VALUE' /* 非必须 */
};
cos.multipartInit(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
| CacheControl | RFC 2616 中定义的缓存策略,将作为 Object 元数据保存 | String | 否 |
| ContentDisposition | RFC 2616 中定义的文件名称,将作为 Object 元数据保存 | String | 否 |
| ContentEncoding | RFC 2616 中定义的编码格式,将作为 Object 元数据保存 | String | 否 |
| ContentType | RFC 2616 中定义的内容类型(MIME),将作为 Object 元数据保存 | String | 否 |
| Expires | RFC 2616 中定义的过期时间,将作为 Object 元数据保存 | String | 否 |
| ACL | 允许用户自定义文件权限,有效值:private,public-read | String | 否 |
| GrantRead | 赋予被授权者读的权限,格式x-cos-grant-read: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID" | String | 否 |
| GrantWrite | 赋予被授权者写的权限,格式x-cos-grant-write: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID" | String | 否 |
| GrantFullControl | 赋予被授权者读写权限,格式x-cos-grant-full-control: uin=" ",uin=" ", 当需要给子账户授权时,uin="RootAcountID/SubAccountID", 当需要给根账户授权时,uin="RootAcountID" | String | 否 |
| StorageClass | 设置Object的存储级别,枚举值:Standard,Standard_IA,Nearline,默认值:Standard(目前只支持华南园区) | String | 否 |
| x-cos-meta- * | 允许用户自定义的头部信息,将作为 Object 元数据返回。大小限制 2 K | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| Bucket | 分片上传的目标 Bucket | String |
| Key | Object 的名称 | String |
| UploadId | 在后续上传中使用的ID | String |
Upload Part
功能说明
Upload Part 请求实现在初始化以后的分块上传,支持的块的数量为 1 到 10000,块的大小为 1 MB 到 5 GB。在每次请求Upload Part 时候,需要携带 partNumber 和 uploadID,partNumber 为块的编号,支持乱序上传。
操作方法原型
调用 Upload Part 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
ContentLength : 'STRING_VALUE', /* 必须 */
Expect : 'STRING_VALUE', /* 非必须 */
ContentSha1 : 'STRING_VALUE', /* 非必须 */
PartNumber : 'STRING_VALUE', /* 必须 */
UploadId : 'STRING_VALUE', /* 必须 */
};
cos.multipartUpload(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
| ContentLength | RFC 2616 中定义的 HTTP 请求内容长度(字节) | String | 是 |
| Expect | 当使用 Expect: 100-continue 时,在收到服务端确认后,才会发送请求内容 | String | 否 |
| ContentSha1 | RFC 3174 中定义的 160-bit 内容 SHA-1 算法校验值 | String | 否 |
| PartNumber | 分块的编号 | String | 是 |
| UploadId | 上传任务编号 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| ETag | 分块的 ETag 值,为 sha1 校验值 | String |
Complete Multipart Upload
功能说明
Complete Multipart Upload 用来实现完成整个分块上传。当您已经使用 Upload Parts 上传所有块以后,你可以用该 API 完成上传。在使用该 API 时,您必须在 Body 中给出每一个块的 PartNumber 和 ETag,用来校验块的准确性。
操作方法原型
调用 Complete Multipart Upload 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
UploadId : 'STRING_VALUE', /* 必须 */
Parts : [
{
PartNumber : 'STRING_VALUE', /* 必须 */
ETag : 'STRING_VALUE' /* 必须 */
},
...
]
};
cos.multipartComplete(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
| UploadId | 上传任务编号 | String | 是 |
| Parts | 分块的ETag 信息 | Array | 是 |
| PartNumber | 分块的编号 | String | 是 |
| ETag | 分块的ETag 值,为 sha1 校验值,需要在校验值前后加上双引号,如 "3a0f1fd698c235af9cf098cb74aa25bc" | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| Location | 创建的 Object 的外网访问域名 | String |
| Bucket | 分块上传的目标 Bucket | String |
| Key | Object 的名称 | String |
| ETag | 合并后文件的 MD5 算法校验值 | String |
List Parts
功能说明
List Parts用来查询特定分块上传中的已上传的块
操作方法原型
调用 List Parts 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
UploadId : 'STRING_VALUE', /* 必须 */
EncodingType : 'STRING_VALUE', /* 非必须 */
MaxParts : 'STRING_VALUE', /* 非必须 */
PartNumberMarker : 'STRING_VALUE' /* 非必须 */
};
cos.multipartListPart(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
| UploadId | 上传任务编号 | String | 是 |
| EncodingType | 规定返回值的编码方式 | String | 否 |
| MaxParts | 单次返回最大的条目数量,默认1000 | String | 否 |
| PartNumberMarker | 默认以 UTF-8 二进制顺序列出条目,所有列出条目从 marker 开始 | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| Bucket | 分块上传的目标 Bucket | String |
| Encoding-type | 规定返回值的编码方式 | String |
| Key | Object 的名称 | String |
| UploadID | 标示本次分块上传的 ID | String |
| Initiator | 用来表示本次上传发起者的信息,子节点包括 UID | Object |
| UID | 开发商 APPID | String |
| Owner | 用来表示这些分块所有者的信息,子节点包括 UID | Object |
| UID | 拥有者 qq | String |
| StorageClass | 用来表示这些分块的存储级别,枚举值:Standard,Standard_IA,Nearline | String |
| PartNumberMarker | 默认以 UTF-8 二进制顺序列出条目,所有列出条目从 marker 开始 | String |
| NextPartNumberMarker | 假如返回条目被截断,则返回 NextMarker 就是下一个条目的起点 | String |
| MaxParts | 单次返回最大的条目数量 | String |
| IsTruncated | 返回条目是否被截断,'true' 或者 'false' | String |
| Part | 分块信息集合 | Array |
| PartNumber | 分块编号 | String |
| LastModified | 块最后修改时间 | String |
| Etag | 块的 SHA-1 算法校验值 | String |
| Size | 块大小,单位 Byte | String |
Abort Multipart Upload
功能说明
Abort Multipart Upload 用来实现舍弃一个分块上传并删除已上传的块。当您调用 Abort Multipart Upload 时,如果有正在使用这个 Upload Parts 上传块的请求,则 Upload Parts 会返回失败。
操作方法原型
调用 Abort Multipart Upload 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Key : 'STRING_VALUE', /* 必须 */
UploadId : 'STRING_VALUE' /* 必须 */
};
cos.multipartAbort(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | 文件名称 | String | 是 |
| UploadId | 上传任务编号 | String | 是 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| MultipartAbortSuccess | Multipart Abort 是否成功 | Boolean |
List Multipart Uploads
功能说明
List Multiparts Uploads 用来查询正在进行中的分块上传。单次最多列出 1000 个正在进行中的分块上传。
操作方法原型
调用 List Multipart Uploads 操作:
var params = {
Bucket : 'STRING_VALUE', /* 必须 */
Region : 'STRING_VALUE', /* 必须 */
Delimiter : 'STRING_VALUE', /* 非必须 */
EncodingType : 'STRING_VALUE', /* 非必须 */
Prefix : 'STRING_VALUE', /* 非必须 */
MaxUploads : 'STRING_VALUE', /* 非必须 */
KeyMarker : 'STRING_VALUE', /* 非必须 */
UploadIdMarker : 'STRING_VALUE' /* 非必须 */
};
cos.multipartList(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Delimiter | 定界符为一个符号,如果有Prefix,则将Prefix到delimiter之间的相同路径归为一类,定义为Common Prefix,然后列出所有Common Prefix。如果没有Prefix,则从路径起点开始 | String | 否 |
| EncodingType | 规定返回值的编码方式 | String | 否 |
| Prefix | 前缀匹配,用来规定返回的文件前缀地址 | String | 否 |
| MaxUploads | 单次返回最大的条目数量,默认1000 | String | 否 |
| KeyMarker | 与upload-id-marker一起使用,
ObjectName 字母顺序大于 key-marker 的条目将被列出;
ObjectName 字母顺序大于 key-marker 的条目被列出, ObjectName 字母顺序等于 key-marker 且 UploadID 大于 upload-id-marker 的条目将被列出。 | String | 否 |
| UploadIdMarker | 与key-marker一起使用
upload-id-marker将被忽略;
ObjectName字母顺序大于key-marker的条目被列出, ObjectName字母顺序等于 key-marker 且 UploadID 大于 upload-id-marker 的条目将被列出 | String | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| Bucket | 分块上传的目标 Bucket | String |
| Encoding-type | 规定返回值的编码方式 | String |
| KeyMarker | 列出条目从该 key 值开始 | String |
| UploadIdMarker | 列出条目从该 UploadId 值开始 | String |
| NextKeyMarker | 假如返回条目被截断,则返回 NextKeyMarker 就是下一个条目的起点 | String |
| NextUploadIdMarker | 假如返回条目被截断,则返回 UploadId 就是下一个条目的起点 | String |
| IsTruncated | 返回条目是否被截断,'true' 或者 'false' | String |
| delimiter | 定界符为一个符号,如果有 Prefix,则将 Prefix 到 delimiter 之间的相同路径归为一类,定义为 Common Prefix,然后列出所有 Common Prefix。如果没有 Prefix,则从路径起点开始 | String |
| CommonPrefixs | 将 Prefix 到 delimiter 之间的相同路径归为一类,定义为 Common Prefix | Array |
| Prefix | 具体的 Prefix 值 | String |
| Upload | Upload 的信息集合 | Array |
| Key | Object 的名称 | String |
| UploadID | 标示本次分块上传的 ID | String |
| StorageClass | 用来表示分块的存储级别,枚举值:Standard,Standard_IA,Nearline | String |
| Initiator | 用来表示本次上传发起者的信息,子节点包括 UID | Object |
| UID | 开发商 APPID | String |
| Owner | 用来表示这些分块所有者的信息,子节点包括 UID | Object |
| UID | 拥有者 qq | String |
| Initiated | 分块上传的起始时间 | String |
Slice Upload File
功能说明
Slice Upload File 可用于实现文件的分块上传。
操作方法原型
调用 Slice Upload File 操作:
var params = {
Bucket: 'STRING_VALUE', /* 必须 */
Region: 'STRING_VALUE', /* 必须 */
Key: 'STRING_VALUE', /* 必须 */
FilePath: 'STRING_VALUE', /* 必须 */
SliceSize: 'STRING_VALUE', /* 非必须 */
AsyncLimit: 'NUMBER_VALUE', /* 非必须 */
onHashProgress: function (progressData) {
console.log(JSON.stringify(progressData));
},
onProgress: function (progressData) {
console.log(JSON.stringify(progressData));
},
};
cos.sliceUploadFile(params, function(err, data) {
if(err) {
console.log(err);
} else {
console.log(data);
}
});
操作参数说明
| 参数名 | 参数描述 | 类型 | 必填 |
| Bucket | Bucket 的名称。命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 | String | 是 |
| Region | Bucket 所在区域。 | String | 是 |
| Key | Object 名称 | String | 是 |
| FilePath | 本地文件路径 | String | 是 |
| SliceSize | 分块大小 | String | 否 |
| AsyncLimit | 分块的并发量 | String | 否 |
| onHashProgress | 计算文件 sha1 值的进度回调函数,回调是一个对象,包含进度信息 | Function | 否 |
| onProgress | 进度回调函数,回调是一个对象,包含进度信息 | Function | 否 |
回调函数说明
function(err, data) { ... }
回调参数说明
| 参数名 | 参数描述 | 类型 |
| err | 请求发生错误时返回的对象,包括网络错误和业务错误。如果请求成功,则为空 | Object |
| data | 请求成功时返回的对象,如果请求发生错误,则为空 | Object |
| Location | 创建的 Object 的外网访问域名 | String |
| Bucket | 分块上传的目标 Bucket | String |
| Key | Object 的名称 | String |
| ETag | 合并后文件的 SHA-1 算法校验值 | String |
进度回调参数
| 参数名 | 参数描述 | 类型 |
| SliceSize | 分块大小 | String |
| PartNumber | 上传成功的分块编号 | Number |
| FileSize | 文件总大小 | Number |