パスワードのリセットメールを送信するエンドポイントにhttpsリクエストを送信するAWSラムダを作成しました。ローカルでラムダを実行すると、すべてが期待どおりに実行され、受信トレイにメールが届きますが、ノードコードをアップロードしてAWSコンソールでラムダを実行すると、投稿リクエストを作成する時点で次のエラーが発生します:AWSラムダエラーノードhttpsリクエスト
Error: getaddrinfo ENOTFOUND myfakedomain.com myfakedomain.com:443
(たSuperAgentノードモジュール使用)、HTTPS要求を行う私のラムダ関数は次のようになり
:
function resetPassword(intentRequest, callback) {
const emailAddress = intentRequest.currentIntent.slots.EmailAddress;
console.log(`emailAddress is: ${emailAddress}`);
request
.post('https://myfakedomain.com:443/passwordreset', emailAddress)
.set({ 'Content-Type': 'text/plain' })
.end((resp) => {
console.log('response was: ' + resp);
});
callback(close(intentRequest.sessionAttributes, 'Fulfilled',
{ contentType: 'PlainText', content: `Thanks, a reset password link has been sent to ${emailAddress}.` }));
}
AWS経由で私のラムダを実行しているこのエラーのいずれかの特定の理由があります?誰かがそれを打つことができるようにリセットパスワードエンドポイントが開いています。私はまた、私の投稿要求の最初からhttps://を削除しようとしましたが、運はありません。私はそれがエラーのロギングも非常に最小限に抑えることはないと思う!
ご協力いただきありがとうございます。
これは正しくありません。ラムダ関数は、デフォルトでインターネットにアクセスできます。 VPC内のラムダ機能は、NATゲートウェイを使用していない限りインターネットにアクセスできません。 – dashmug
ダスマグ、ありがとう。更新しました。 –