从 Java 使用 LocalStack 时获取 AmazonKinesisException 状态代码:502
Getting an AmazonKinesisException Status Code: 502 when using LocalStack from Java
我正在使用 LocalStack 编写集成测试来模拟我对 Kinesis 的调用。我已经创建了一个 Kinesis 客户端,但是当我尝试将记录放在 Kinesis 上时出现错误:
com.amazonaws.services.kinesis.model.AmazonKinesisException: null (Service: AmazonKinesis; Status Code: 502; Error Code: null; Request ID: null)
我试过使用以下方法禁用 CBOR 和证书检查:
System.setProperty(SDKGlobalConfiguration.DISABLE_CERT_CHECKING_SYSTEM_PROPERTY, "false");
System.setProperty(SDKGlobalConfiguration.AWS_CBOR_DISABLE_SYSTEM_PROPERTY, "true");
我是这样构建客户端的:
.withEndpointConfiguration(localstack.getEndpointConfiguration(LocalStackContainer.Service.KINESIS))
.withCredentials(localstack.getDefaultCredentialsProvider())
.build()
我每次都得到 502。 S3 一切正常,只是 Kinesis 服务给我带来了麻烦。有人见过这样的东西吗?
我在本地通过 localstack 连接 Kinesis 时遇到了类似的问题。我使用的是 v2 SDK java 库。
根本原因
默认情况下,kinesalite 不支持 CBOR,应将其禁用以使其 运行。互联网上充斥着禁用 CBOR 的标志,但其中 none 对我有用。
你必须做两件事:
- 设置环境变量
AWS_CBOR_DISABLE=true
告诉localstack停止使用
- 设置环境变量
aws.cborEnabled=false
以告知 AWS SDK 停止使用它。
在我的例子中,我被 software.amazon.awssdk.core.SdkSystemSetting
中提到的 SDK 标志卡住了
我正在使用 LocalStack 编写集成测试来模拟我对 Kinesis 的调用。我已经创建了一个 Kinesis 客户端,但是当我尝试将记录放在 Kinesis 上时出现错误:
com.amazonaws.services.kinesis.model.AmazonKinesisException: null (Service: AmazonKinesis; Status Code: 502; Error Code: null; Request ID: null)
我试过使用以下方法禁用 CBOR 和证书检查:
System.setProperty(SDKGlobalConfiguration.DISABLE_CERT_CHECKING_SYSTEM_PROPERTY, "false");
System.setProperty(SDKGlobalConfiguration.AWS_CBOR_DISABLE_SYSTEM_PROPERTY, "true");
我是这样构建客户端的:
.withEndpointConfiguration(localstack.getEndpointConfiguration(LocalStackContainer.Service.KINESIS))
.withCredentials(localstack.getDefaultCredentialsProvider())
.build()
我每次都得到 502。 S3 一切正常,只是 Kinesis 服务给我带来了麻烦。有人见过这样的东西吗?
我在本地通过 localstack 连接 Kinesis 时遇到了类似的问题。我使用的是 v2 SDK java 库。
根本原因
默认情况下,kinesalite 不支持 CBOR,应将其禁用以使其 运行。互联网上充斥着禁用 CBOR 的标志,但其中 none 对我有用。
你必须做两件事:
- 设置环境变量
AWS_CBOR_DISABLE=true
告诉localstack停止使用 - 设置环境变量
aws.cborEnabled=false
以告知 AWS SDK 停止使用它。
在我的例子中,我被 software.amazon.awssdk.core.SdkSystemSetting