php エディター Xinyi は、AWS Lambda Golang プログラミング言語を使用する際に注意すべき点が 1 つあることを皆さんに思い出させます。iotdataplane.PublishInput() メソッドを使用する場合、そのペイロード (Payload) は常に空の。これは、関連するコードを作成するとき、プログラムが正常に動作するように、空のロード状況の処理に特別な注意を払う必要があることを意味します。実際の開発プロセスでは、条件ステートメントまたはエラー処理メカニズムを使用してこの状況を処理し、潜在的な問題を回避できます。このことを念頭に置くと、コードの堅牢性と信頼性が向上します。
Golangを使用してiotdataplane.PublishInput()のPayloadフィールドをパッケージ化する方法がわかりません。誰か助けてくれませんか?私の Lambda はエラーなしでパブリッシュされますが、ペイロードは CloudWatch とサブスクライバーでは常に空として表示されます。これが私がやっていることです:
リーリーペイロードのさまざまなバリエーションを試してみましたが、進展はありませんでした。また、ある時点では、ペイロードはフィールドとして「locationName」と「type」を持つ構造体である必要があると考えられていましたが、それもうまくいきませんでした。ペイロードのバイト配列は決して空ではありません。
問題が見つかりました。
Mosquito を使用してラムダ応答をテストしていますが、問題はラムダ関数ではなく、テストに使用される Mosquito サブスクライバー エントリにあります。モスキート バーと同じ ID (-i オプション) を使用しているため、ブローカーが混乱していると思われます。サブスクリプション エントリから -i オプションを削除すると、ラムダ パブリッシングが機能し始めました。
以上がAWS lambda golang iotdataplane.PublishInput() ペイロードは常に空ですの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。