簡體   English   中英

從 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 的標志,但沒有一個對我有用。

你必須做兩件事:

  1. 設置環境AWS_CBOR_DISABLE=true以告訴localstack停止使用
  2. 設置環境aws.cborEnabled=false以告訴AWS 開發工具包停止使用它。

就我而言,我堅持使用software.amazon.awssdk.core.SdkSystemSetting引用的 SDK 標志

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM