You need to enable JavaScript to run this app.
导航
使用 Flutter SDK 访问 TOS
最近更新时间:2025.01.14 16:10:35首次发布时间:2024.05.08 17:22:15

当前,社区为 TOS 提供了 Flutter SDK 的支持,并发布到了 pub.dev 仓库。您可以使用 Flutter SDK 访问 TOS ,实现资源的上传和下载。本文以 Android Studio 为例,介绍使用 Flutter SDK 访问 TOS 的操作步骤。

前提条件

操作步骤

  1. 在本地配置长期访问凭证。

    说明

    关于获取 Access Key ID 和 Secret Access Key 的具体步骤,请参见 Access Key 管理

    在 macOS 系统配置长期访问凭证的操作如下:

    1. 打开终端并执行以下命令打开文件。

      nano ~/.bash_profile
      
    2. 在文件末尾添加 AKSK 信息。

      export TOS_ACCESS_KEY=AKTPYmI1Z****
      export TOS_SECRET_KEY=T1dJM01UU****
      
    3. 保存文件并退出。

    4. 执行以下命令生效配置信息。

      source ~/.bash_profile
      
    5. 执行以下命令验证配置信息。

      echo $TOS_ACCESS_KEY
      echo $TOS_SECRET_KEY
      

      如果配置成功,则返回如下示例:

      AKTPYmI1Z****
      T1dJM01UU****
      
  2. 执行以下命令,安装 TOS Flutter SDK。

    说明

    关于 TOS Flutter SDK 的详细介绍,请参见 tos package

    flutter pub add tos
    
  3. 使用 Flutter SDK 访问 TOS。
    根据实际情况修改以下代码中的 regionendpoint,然后运行以下代码。

说明

设置 endpoint 参数时,访问域名前需要添加 http://,例如 http://tos-cn-beijing.volces.com。关于 Endpoint 的详细介绍,请参见地域和访问域名(Endpoint)

import 'dart:io' show Platform;
import 'package:tos/enum.dart';
import 'package:tos/exception.dart';
import 'package:tos/tos.dart';

void main() async {
    Map<String, String> envVars = Platform.environment;
    TosClient client = TosClientBuilder()
        .ak(envVars['TOS_ACCESS_KEY'] ?? '')
        .sk(envVars['TOS_SECRET_KEY'] ?? '')
        .region('cn-beijing')
        .endpoint('https://tos-cn-beijing.volces.com')
        .build();

    var output = await client.listBuckets(ListBucketsInput());
    print(output.requestId);
    for(var bucket in output.buckets){
        print(bucket.name);
    }
    client.close();
}

如果返回存储桶的名称,说明使用 Flutter SDK 访问 TOS 成功。

相关操作

您还可以参考接口文档自行编译代码,使用 Flutter SDK 实现创建存储桶、删除对象等操作,关于 Flutter SDK 的更多接口文档,请参见 tos library