所有文档

          对象存储 BOS

          Bucket管理

          新建Bucket

          • 基本流程

            1. 创建BosClient。
            2. 执行createBucket()方法,你需要提供Bucket的名字。
          • 示例代码

            let newBucketName = <BucketName>;    // 新建一个Bucket,指定Bucket名称
            client.createBucket(newBucketName)
              .then(function() {
                       // 创建完成,添加您自已的代码;
              })
              .catch(function(error) {
                      // 创建失败,添加您自己的代码,处理异常
              });

            注意: 由于Bucket的名称在所有区域中是唯一的,所以需要保证BucketName不与其他所有区域上的BucketName相同。

          查看Bucket列表

          • 基本流程

            1. 创建BosClient。
            2. 执行listBuckets()方法。
          • 示例代码

            如下代码可以列出用户所有的Bucket:

            client.listBuckets()
              .then(function(response) {
                  (response.body.buckets || []).forEach(function (bucket) { console.log(bucket.name) })
                  })
              .catch(function() {
                  // 查询失败,添加您自己的代码,处理异常
              });

          判断Bucket是否存在

          • 基本流程

            1. 创建BosClient。
            2. 执行doesBucketExist()方法。
          • 示例代码

            client.doesBucketExist(<BucketName>)             //指定Bucket名称
              .then(function(response) {
                  if(response) {
                      console.log('Bucket exists');
                  }
                  else {
                      console.log('Bucket not exists');
                  }
              })
              .catch(function() {
                  // 查询失败,添加您自己的代码,处理异常
              });

          删除Bucket

          • 基本流程

            1. 创建BosClient。
            2. 执行deleteBucket()方法。
          • 示例代码

            client.deleteBucket(<BucketName>)
              .then(function() {
                  // 删除完成
              })
              .catch(function(error) {
                  // 删除失败
              });

            注意:如果Bucket不为空(即Bucket中有Object和未完成的三步上传Part存在),则Bucket无法被删除,必须清空Bucket后才能成功删除。

          Bucket权限控制

          设置Bucket的访问权限

          • 基本流程

            1. 创建BosClient。
            2. 执行setBucketAcl()方法。
          • 示例代码

            // 设置Bucket访问权限为private
            client.setBucketCannedAcl(<BucketName>, 'private')
              .then(function() {
                  // 设置完成
              })
              .catch(function(error) {
                  // 设置失败
              });

            说明: Bucket访问权限包含三个值: privatepublic-readpublic-read-write ,它们分别对应相关权限。具体内容可以参考《BOS API文档 使用CannedAcl方式的权限控制》。

          设置指定用户对Bucket的访问权限

          • 基本流程

            1. 创建BosClient。
            2. 执行setBucketAcl()方法。
          • 示例代码

            let grant_list = [
              {
                  'grantee': [
                      {'id': <UserID1>},           // 授权给特定用户1
                      {'id': <UserID2>},           // 授权给特定用户2
                  ],
                  'permission': ['FULL_CONTROL']   // 设置权限为FULL_CONTROL
              },
              {
                  'grantee': [
                      {'id': <UserID3>}           // 授权给特定用户3
                  ],
                  'permission': ['READ']         // 设置权限为READ
              }
            ];
            client.setBucketAcl(<BucketName>, grant_list)
              .then(function() {
                  // 设置完成
              })
              .catch(function(error) {
                  // 设置失败
              });

            注意:Permission中的权限设置包含三个值:READWRITEFULL_CONTROL,它们分别对应相关权限。具体内容可以参考《BOS API文档 上传ACL文件方式的权限控制》。

          上一篇
          初始化
          下一篇
          文件管理