存储空间(Bucket)是用来存储对象(Object)的容器。对象都隶属于存储空间。存储空间按照字母顺序排列。您可以列举当前账号所有地域下符合指定条件的存储空间。
列举所有存储空间
以下代码用于列举当前账号所有地域下的存储空间。
const OSS = require('ali-oss');
const client = new OSS({
// yourregion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
region: 'yourregion',
// 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
authorizationV4: true,
// yourBucketName填写Bucket名称。
bucket: 'yourBucketName',
});
async function listBuckets() {
try {
// 列举当前账号所有地域下的存储空间。
const result = await client.listBuckets();
console.log(result);
} catch (err) {
console.log(err);
}
}
listBuckets();
列举指定前缀的存储空间
以下代码用于列举当前账号所有地域下以example为前缀(prefix)的存储空间。
const OSS = require('ali-oss');
const client = new OSS({
// yourregion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
region: 'yourregion',
// 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
authorizationV4: true,
// yourBucketName填写Bucket名称。
bucket: 'yourBucketName',
});
async function listBuckets() {
try {
const result = await client.listBuckets({
// 指定前缀。
prefix: 'example'
});
// 列举当前账号所有地域下指定前缀的存储空间。
console.log(result);
} catch (err) {
console.log(err);
}
}
listBuckets();
列举指定marker之后的存储空间
以下代码用于列举当前账号所有地域下名称的字母序排在examplebucket之后的存储空间。
const OSS = require('ali-oss');
const client = new OSS({
// yourregion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
region: 'yourregion',
// 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
authorizationV4: true,
// yourBucketName填写Bucket名称。
bucket: 'yourBucketName',
});
async function listBuckets() {
try {
const result = await client.listBuckets({
// 指定Marker。
marker: 'examplebucket'
});
// 列举当前账号所有地域下名称的字母序排在examplebucket之后的存储空间。
console.log(result);
} catch (err) {
console.log(err);
}
}
listBuckets();
列举指定个数的存储空间
以下代码用于列举当前账号所有地域下的存储空间,并指定列举的最大个数为500。
const OSS = require('ali-oss');
const client = new OSS({
// yourregion填写Bucket所在地域。以华东1(杭州)为例,Region填写为oss-cn-hangzhou。
region: 'yourregion',
// 从环境变量中获取访问凭证。运行本代码示例之前,请确保已设置环境变量OSS_ACCESS_KEY_ID和OSS_ACCESS_KEY_SECRET。
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
authorizationV4: true,
// yourBucketName填写Bucket名称。
bucket: 'yourBucketName',
});
async function listBuckets() {
try {
const result = await client.listBuckets({
// max-keys用于限定此次返回Bucket的最大个数,max-keys取值不能大于1000。如果不指定max-keys,则默认返回100个Bucket。
// 列举500个Bucket。
'max-keys': 500
});
console.log(result);
} catch (err) {
console.log(err);
}
}
listBuckets();
相关文档
关于列举存储空间的完整示例代码,请参见GitHub示例。
关于列举存储空间的API接口说明,请参见ListBuckets(GetService)。