一个Bucket下可能有非常多的文件,SDK提供一系列的接口方便用户管理文件。
查看所有文件
通过list来列出当前Bucket下的所有文件。主要的参数如下:
var co = require('co');
var OSS = require('ali-oss');
var client = new OSS({
region: '<Your region>',
accessKeyId: '<Your AccessKeyId>',
accessKeySecret: '<Your AccessKeySecret>',
bucket: 'Your bucket name'
});
co(function* () {
// 不带任何参数,默认最多返回1000个文件
var result = yield client.list();
console.log(result);
// 根据nextMarker继续列出文件
if (result.isTruncated) {
var result = yield client.list({
marker: result.nextMarker
});
}
// 列出前缀为'my-'的文件
var result = yield client.list({
prefix: 'my-'
});
console.log(result);
// 列出前缀为'my-'且在'my-object'之后的文件
var result = yield client.list({
prefix: 'my-',
marker: 'my-object'
});
console.log(result);
}).catch(function (err) {
console.log(err);
});
foo/x
foo/y
foo/bar/a
foo/bar/b
foo/hello/C/1
foo/hello/C/2
...
foo/hello/C/9999
var co = require('co');
var OSS = require('ali-oss');
var client = new OSS({
region: '<Your region>',
accessKeyId: '<Your AccessKeyId>',
accessKeySecret: '<Your AccessKeySecret>',
bucket: 'Your bucket name'
});
function* listDir(dir)
var result = yield client.list({
prefix: dir,
delimiter: '/'
});
result.prefixes.forEach(function (subDir) {
console.log('SubDir: %s', subDir);
});
result.objects.forEach(function (obj) {
console.log(Object: %s', obj.name);
});
end
> yield listDir('foo/')
=> SubDir: foo/bar/
SubDir: foo/hello/
Object: foo/x
Object: foo/y
> yield listDir('foo/bar/')
=> Object: foo/bar/a
Object: foo/bar/b
> yield listDir('foo/hello/C/')
=> Object: foo/hello/C/1
Object: foo/hello/C/2
...
Object: foo/hello/C/9999
var co = require('co');
var OSS = require('ali-oss')
var client = new OSS({
region: '<Your region>',
accessKeyId: '<Your AccessKeyId>',
accessKeySecret: '<Your AccessKeySecret>',
bucket: 'Your bucket name'
});
co(function* () {
var result = yield client.put('object-key', 'local-file', {
meta: {
year: 2016,
people: 'mary'
}
});
console.log(result);
}).catch(function (err) {
console.log(err);
});
var co = require('co');
var OSS = require('ali-oss')
var client = new OSS({
region: '<Your region>',
accessKeyId: '<Your AccessKeyId>',
accessKeySecret: '<Your AccessKeySecret>',
bucket: 'Your bucket name'
});
co(function* () {
var result = yield client.putMeta('object-key', {
meta: {
year: 2015,
people: 'mary'
}
});
console.log(result);
}).catch(function (err) {
console.log(err);
});
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。