あなたのノードのメールをテスト/メールアプリケーションを使用してMailtrap.io


それはタッチで取得し、ユーザーと通信するための最も確実な方法の一つとして、ほとんどすべてのソフトウェアアプリケーションに存在する1つの機能は、メール機能です.このような機能の開発を行うための多くの電子メール配信サービスが、SendgridPostmarkMailgunSparkpostのような風になっている.私のお気に入りはsendgridです.
いずれにせよ、あなたが確実に上記の電子メール配信サービスのいずれかを使用しているとき、あなたは本当の電子メールアドレスを使用しているでしょう.したがって、サンドボックスのテストを行うために必要不可欠です.
Mailtrapに入ります.Mailtrapは偽のSMTPサーバーrailswareによって開発され、非常に中古生産テストに便利です.理想的には、Mailtrapのようなサービスで電子メールテストをして、sendgridに切り替えてください.
この短い例では、ノードでのサンドボックスメールのテスト方法を示します.あなたがフォローしたい場合は、親切にダウンロードしたり、githubからprojectをクローンします.プロジェクトをターミナルで開き、必要なNPMパッケージをnpm installを使用してインストールします.一度インストールされた、cdスタートフォルダに、あなたのお気に入りのエディタでapp.jsファイルを開きます.あなたがすでにそうしなかったならば、mailtrapウェブサイトに乗り越えて、無料のアカウントを作成してください.一度はinboxに移動し、あなたのSMTPとPOP 3資格情報の両方を見る必要があります.

私たちはメールを送るためにnodemailerモジュールを使用するつもりです.nodemailer SMTPトランスポーターを作成し、それを使用するために設定します.
  //Start Here
  const transporter = nodemailer.createTransport({
    host: "smtp.mailtrap.io",
    port: 2525,
    auth: {
        user: "MAILTRAP_SMTP_USERNAME",
        pass: "MAILTRAP_SMTP_PASSWORD"
    }
  });

では、メッセージオプションを設定しましょう.
  const mailOptions= {
    from: '"Test Server" <[email protected]>',
    to: req.body.email,
    subject: "Email Test",
    text: "This is an email test using Mailtrap.io"
  };
それから、私たちのトランスポーターオブジェクトのsendMail()法を使ってメッセージを送ります.


  transporter.sendMail(mailOptions, (err, info) => {
    if(err){
        console.log(err);
        return next(err);
    }
    console.log("Info: ", info);
    res.json({
      message: "Email successfully sent."
    });
  });

これが動作するかどうかテストしましょう.node app.jsを入力してサーバーを起動します.では、http://localhost:8001/emailにPOSTリクエストを送信します.私はこれにcURLを使用するつもりです.あなたはあなたの好みのPostmanまたは任意の残りのクライアントを使用することができます.

curl -X POST -H "Content-Type:application/json" -d "{"""email""":"""[email protected]"""}" http://localhost:8001/email                    

うまくいけば、以下のような応答が得られます.

{"message":"Email successfully sent."}

これが我々のメールトラップinboxをチェックすることによってあるかどうかチェックしましょう.


あなたが見ることができるように、Mailtrapは簡単に上記のようにメールを送信するテストすることができます.ノード.この例で使用されるJSアプリは、メールを送信するためにNodemailerを使用しますが、そこに他のトランスポートオプションと電子メールパッケージがあります.あなたがnodemailer選択肢を探しているならば、親切にこの記事をチェックしてください:Sending Emails with Node.js.この記事は、Email.jsのような電子メール指向のパッケージと、Gmailを使用してノードからメッセージを送信する方法について詳しく説明します.jsアプリ.
ハッピーコーディング!