AWS Aurora MySQL データベースはノード Lambda 関数でクエリできません
P粉184747536
P粉184747536 2023-08-25 21:31:48
0
1
671
<p>Lambda 関数を使用して AWS Aurora MySQL データベースにデータを書き込もうとしています。 </p> <h3>コード</h3> <p>何らかの理由で機能しないようです。これまでのコードは非常に単純ですが、正しく実行されません。これは、ユーザーが Cognito に登録するときに呼び出される単純な Lambda 関数であり、ユーザーの認証情報を含む新しいエントリを SQL データベースに作成する必要があります。 </p> <pre class="brush:php;toolbar:false;">const mysql = require('mysql') const db = mysql.createConnection({ ホスト: "****"、 ポート: *****、 ユーザー: "*****", パスワード: "*****"、 データベース: "*****", }) import const lambdaHandler = async (event: any, context: any,) => { const ユーザー = { uid:event.request.userAttributes.sub、 ユーザー名:event.request.userAttributes.nickname、 電子メール:event.request.userAttributes.email、 } console.log("クエリ前") const query = `INSERT INTO users (Uid, Username, Email) VALUES (${user.uid}, ${user.username}, ${user.email})` await db.query(query, (err: any, result: any) => { if (err) console.error(err) console.log("クエリ応答: " 結果) }) console.log("クエリ後") リターンイベント。 };</pre> <p>関数の出力は次のとおりです。</p> <pre class="brush:php;toolbar:false;">START リクエスト ID: bb1d2143-97e4-4761-a48a-f482cf94f73b バージョン: $LATEST 2022-03-17T14:02:35.956Z bb1d2143-97e4-4761-a48a-f482cf94f73b クエリ前の情報 2022-03-17T14:02:35.961Z bb1d2143-97e4-4761-a48a-f482cf94f73b クエリ後の情報 終了リクエストID: bb1d2143-97e4-4761-a48a-f482cf94f73b REPORT RequestId: bb1d2143-97e4-4761-a48a-f482cf94f73b 初期期間: 0.14 ミリ秒 期間: 138.07 ミリ秒 請求期間: 139 ミリ秒 メモリ サイズ: 128 MB 最大使用メモリ: 128 MB</pre> <p>注: クエリ関数はログ レコードを見つけられませんでした (エラーをスローするか、応答をログに記録する必要があります)</p> <h3>戦略</h3> <p>Lambda 関数の実行ロールには次のポリシーが含まれています: <code>AWSLambdaVPCAccessExecutionRole</code> および <code>AWSLambda_FullAccess</code></p> <h3>その他</h3> <p>Lambda 関数と Aurora は、同じ VPC の異なるサブネットにあります。これが問題を引き起こすかどうかはわかりません。しかし、これにより関数がエラーをスローすることはないでしょうか? <code>missing authorization</code>のようなエラー? </p> <p>現時点では何が足りないのかわかりません</p>
P粉184747536
P粉184747536

全員に返信(1)
P粉960525583

問題は、db.query が Promise スタイルではなくコールバック スタイルを使用していることです。 Promise を使用するには変換する必要があります。

1 つの方法は、Util.promisify...

を使用することです。 リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート