无法让 akka 流/alpakka S3 在简单的情况下工作
can't get akka streams / alpakka S3 to work in simple case
我正在做我认为非常简单的事情来检查 alpakka 是否正常工作:
val awsCreds = AwsBasicCredentials.create("xxx", "xxx")
val credentialsProvider = StaticCredentialsProvider.create(awsCreds)
implicit val staticCreds = S3Attributes.settings(S3Ext(context.system).settings.withCredentialsProvider(credentialsProvider)
.withS3RegionProvider(new AwsRegionProvider {val getRegion: Region = Region.US_EAST_2}))
val d = S3.checkIfBucketExists(action.bucket)
d foreach { msg => log.info("mgs: " + msg.toString)}
当我 运行 我得到
msgs: NotExists
但是 action.bucket 引用的存储桶确实存在,我可以使用这些凭据访问它。更重要的是,当我修改凭据(通过更改密钥)时,我会收到相同的消息。根据 documentation,我应该得到的是 AccessDenied。
我之所以走到这一步,是因为我认为环境没有获得正确的凭据 - 因此所有的硬编码值。但现在我真的不知道是什么导致了这种行为。
谢谢
更新:动作对象只是一个案例class,由一个桶和一个路径组成。我在调试中检查了 action.bucket 和 action.path 指向它们应该是的东西 - 在本例中是 S3 存储桶。我还尝试了上面的代码,只用字符串存储桶名称代替了 action.bucket.
只是我的粗心。 . .
一个错误的副本添加了一个额外的隐式系统。 akka 2.6 中对隐式物化器进行了一些更改,我认为这些更改与额外的隐式 actor 系统一起构成了一个奇怪的组合。
我正在做我认为非常简单的事情来检查 alpakka 是否正常工作:
val awsCreds = AwsBasicCredentials.create("xxx", "xxx")
val credentialsProvider = StaticCredentialsProvider.create(awsCreds)
implicit val staticCreds = S3Attributes.settings(S3Ext(context.system).settings.withCredentialsProvider(credentialsProvider)
.withS3RegionProvider(new AwsRegionProvider {val getRegion: Region = Region.US_EAST_2}))
val d = S3.checkIfBucketExists(action.bucket)
d foreach { msg => log.info("mgs: " + msg.toString)}
当我 运行 我得到
msgs: NotExists
但是 action.bucket 引用的存储桶确实存在,我可以使用这些凭据访问它。更重要的是,当我修改凭据(通过更改密钥)时,我会收到相同的消息。根据 documentation,我应该得到的是 AccessDenied。
我之所以走到这一步,是因为我认为环境没有获得正确的凭据 - 因此所有的硬编码值。但现在我真的不知道是什么导致了这种行为。
谢谢
更新:动作对象只是一个案例class,由一个桶和一个路径组成。我在调试中检查了 action.bucket 和 action.path 指向它们应该是的东西 - 在本例中是 S3 存储桶。我还尝试了上面的代码,只用字符串存储桶名称代替了 action.bucket.
只是我的粗心。 . .
一个错误的副本添加了一个额外的隐式系统。 akka 2.6 中对隐式物化器进行了一些更改,我认为这些更改与额外的隐式 actor 系统一起构成了一个奇怪的组合。