Sam*_*m B 3 java amazon-dynamodb amazon-kinesis aws-sdk localstack
使用 Kinesis Consumer Library 版本 2 开发 Kinesis Consumer 并将 Dynamo DB 端点覆盖为 localstack 端点时,由于 SSL 握手错误,库无法创建租赁表。
我可以确认使用 AWS 的 Dynamo DB 时创建表成功,但是一旦我将端点 url 覆盖为 localstack url,Dynamo DB 客户端在多次重试后就无法创建租赁表。堆栈跟踪不是很有用,但 Wireshark 显示了所有 SSL 握手错误,因此我只能假设 Amazon SDK 不接受 localstack 证书。我找不到任何关于如何使用该software.amazon.awssdk包禁用证书验证的内容。
Region region = Region.of("us-east-1");
DefaultCredentialsProvider credentialsProvider = DefaultCredentialsProvider.create();
DynamoDbAsyncClient dynamoClient = DynamoDbAsyncClient.builder()
.region(region)
.endpointOverride(URI.create("https://localhost:4569"))
.credentialsProvider(credentialsProvider)
.build();
Run Code Online (Sandbox Code Playgroud)
/edit 这基于此处找到的 Amazon 示例: https: //docs.aws.amazon.com/streams/latest/dev/kcl2-standard-consumer-java-example.html
小智 7
在 kotlin 中,我设置一个这样的环境变量:
System.setProperty(SDKGlobalConfiguration.DISABLE_CERT_CHECKING_SYSTEM_PROPERTY, "true");
Run Code Online (Sandbox Code Playgroud)
这将允许您将 localstack 用于 DynamoDB,事实上,这正是我设置上述环境变量的原因。
更多环境变量可以在aws-java-sdk github 存储库中找到
| 归档时间: |
|
| 查看次数: |
14137 次 |
| 最近记录: |