2016-09-28 12 views
1

ローカルでテストしようとしている私のWebページにnodemailer機能があります。 私のpackage.jsonでは、バージョンは"nodemailer": "0.7.1"です。 は私が持っている私のルーティングファイルで:説明なしのNememailerエラー

var express = require('express'); 
var router = express.Router(); 
var nodemailer = require("nodemailer"); 


router.get('/', function(req, res, next) { 
    res.render('home'); 
}); 

var smtpTransport = nodemailer.createTransport("SMTP",{ 
    service: "Gmail", 
    auth: { 
    user: "[email protected]", 
    pass: "examplePass" 
    } 
}); 

router.get('/send',function(req,res){ 
    var mailOptions={ 
     from : req.query.from 
    } 
     console.log(mailOptions); 
     smtpTransport.sendMail(mailOptions, function(error, response){ 
    if (error){ 
     console.log(error); 
     res.end("error"); 
    } else { 
     console.log("Message sent: " + response.message); 
     res.end("sent"); 
    } 
    }); 
}); 

module.exports = router; 

そして、私のページに私が行く下部のスクリプトを持っている:

$(document).ready(function(){ 
    var to,from; 
    $(".signup").on("click", function(){ 
    from = $("#search").val(); 

    $.get("/send", 
      {from:from}, 
      function(data){ 
      alert("Thanks :) We'll keep you updated."); 
      location.reload(true); 
      }); 
    }); 
}); 

私はいくつかのことをテストし、私はサインアップ]ボタンをクリックしたときに、私は入手できますか[from]フィールドとアラートメッセージが表示され、アラートを承認した後にページがリロードされます。

問題は、メールが実際に受信トレイに届かないということである、と私は、要求のネットワークに見れば、コンソールMSG(Firefoxは)単に"syntax error send:1:1"

を読み、私はそのステータスコードを見ることができます200 OKですが、「レスポンス」タブには「エラー」としか記載されていません。

私は情報なしでこれをデバッグすることはできませんので、誰かがそれが動作していない理由を知りたいと願っています。私はそれが完全に動作し、基本的にそこからコピー貼り付けを行った別のサイトを持っているので、それは途中で動作するはずです...

ありがとう。

答えて

1

Nodemailer STMP機能のデータフィールドに問題があることが分かりました。具体的には、私は 'to:[email protected]'パラメータを省略しました。

私は、サーバー側ではconsole.logを通じてこの問題をデバッグすることができましたし、最終的には再び機能フィールドをチェックするために私の考えを与えたこのポストにぶつかっ:いずれの場合でSending email from local host with Nodemailer

を 'を追加to: '' from: 'に加えて、そのトリックをしました。