私はnode.jsプログラミングに不慣れです。メールの送信にnodemailerモジュールを使用しています。
const nodemailer = require ('nodemailer'),
credentials=require('./credentials.js');
var mailTransport=nodemailer.createTransport({
service:'Gmail',
auth: {
user : credentials.gmail.user,
pass : credentials.gmail.password,
}
});
function sendMail(mail_id){
mailTransport.sendMail({
from: ' "my name" <[email protected]>',
to : mail_id, //[email protected]
subject : 'Hello',
text: "Hello How do u do ?",
},function(err,info){
if(err){
console.log('Unable to send the mail :'+err.message);
}
else{
console.log('Message response : '+info.response);
}
});
}
exports.sendMail=sendMail;
これは、さまざまなユーザーにメールを送信するための私のプログラムです。しかし、私は得ています 不正なログイン 。なぜこれが来るのか私にはわからない。私はnode.jsとサーバー側スクリプトを初めて使用します。
資格情報にGmailのユーザー名とパスワードを使用しています。
私を助けてください。
ログイン資格情報を再確認しましたか?また、「from」アドレスを再確認してメールを照合しましたか?
3週間前にgithubページでgmailの例を示したnodemailerをいくつかのテストに使用しましたが、これは魅力的なように機能しました。
https://github.com/andris9/Nodemailer
無効なログインは、資格情報の入力ミス/間違ったことを示します。
1つの理由として、Gmailからの「最新のセキュリティ標準」による保護が考えられます。
「Googleアカウント:ログイン試行がブロックされました」という件名の新着メールがないか、Gmailの受信トレイを確認します
はいの場合は、メールを開いてリンクをクリックします https://www.google.com/settings/security/lesssecureapps
[安全性の低いアプリのアクセス]を[オンにする]に設定します。もう一度お試しください。今すぐ機能するはずです。
アプリのセキュリティを有効にする必要があります:
| * | Gmailを使用している場合、
Use :
service: 'gmail',
Goto :
https://myaccount.google.com/lesssecureapps
Enable :
Allow less secure apps: ON
| * | yahooを使用している場合、
Use :
service: 'yahoo',
Goto :
https://login.yahoo.com/account/security
Enable :
Allow apps that use less secure sign in
| * | LiveまたはHotmailを使用している場合、何も有効にする必要はありません。
Use :
service: 'hotmail',
特に2つの問題:または有効にしていない安全性の低いアプリhttps://myaccount.google.com/lesssecureapps または有効にしていないディスプレイロック解除キャプチャhttps://accounts.google.com/DisplayUnlockCaptcha 、あなたはする必要がありますそれらの両方をオンにします。