如何使用 CDK 在 Amazon S3 存储桶中创建文件夹以扩大上传要求

How to create a folder in an amazon S3 bucket using CDK for amplify upload requirement

我已经使用 CDK 创建了一个 s3 存储桶

const test_bucket = new s3.Bucket(this, 'assets-bucket-id', {
  bucketName: 'assets-bucket-name',
  cors: [
    {
      allowedHeaders: [
        "*"
      ],
      allowedMethods: [
        s3.HttpMethods.POST,
        s3.HttpMethods.PUT,
        s3.HttpMethods.GET,
      ],
      allowedOrigins: [
        "*"
      ],
      exposedHeaders: [
        'x-amz-server-side-encryption',
        'x-amz-request-id',
        'x-amz-id-2',
        'ETag'
      ],
    }
  ],
})

但是我想添加 protectedpublicprivate 的文件夹,因为我将其用于 Cognito 上传并且这些是必需的 https://docs.amplify.aws/lib/storage/configureaccess/q/platform/js/

我可以使用 cdk s3 模块来实现吗?

谢谢

根据@Jarmod 在评论中澄清的内容,即使可以使用 Lambda 或某些脚本在 CDK 创建资源时自动创建文件夹(CDK 目前没有本地方法),它是我的用例不需要。

上传成功后将创建相应的文件夹。

通过配置指定所需的 'level'(例如 'protected')docs.amplify.aws/lib/storage/configureaccess/q/platform/js 进行测试,并在成功上传后自动创建一个文件夹作为级别。