0

在我的应用程序中,我需要使用 s3 来存储图像和视频。所以我在 pubspec.yaml 中添加了 amplify_storage_s3、amplify_flutter 包。

我也有一个jsondata如下

{
    "statusCode": 200,
    "message": "Aws credentials getting success",
    "data": {
        "AccessKeyId": "AKIATR",
        "SecretAccessKey": "+BCL/54/XiwXF3wM36L1+y4",
        "expiresAt": "2021-11-07T04:11:11.000Z",
        "directoryPath": "posts/images/",
        "bucket": "assets"
    }
}

在上面的 json 中,我需要将 AccessKey、directoryPath、bucket 的值与图像文件一起存储到放大 s3 中。我添加了一个函数来将值存储到 s3。

 Future<String?> uploadfile(file) async {
    try {
      final result = await Amplify.Storage.uploadFile(
        local: file,
        key: _mediaResponse!.accessKeyId.toString(),
        
      );
    } catch (e) {
      setErrorMessage(e.toString());
    }
  }

如何正确使用 amplifys3 传递 AccessKey、directoryPath、bucket 的值?

4

1 回答 1

0

通常,您将使用 amplify CLI 创建您的 S3 存储桶,它会在 amplifyconfiguration.dart 文件中为您配置所有内容 - 这是您的 Amplify 对象将获取配置的地方。

如果您想使用现有的 S3 存储桶(即不是由 Amplify CLI 创建的存储桶)- 这是您想要尝试做的事情,您可以按照以下步骤操作:https ://docs.amplify.aws/lib/storage/existing -资源/q/平台/颤振/

于 2021-10-11T13:30:33.993 回答