2013-07-10 4 views
0

여기 nodemailer 모듈을 사용하고 있습니다 : https://github.com/andris9/Nodemailer으로 webapp에서 자동으로 이메일을 보내고 있습니다. 파이어 폭스를 사용하는 PC 브라우저에서 테스트 한 결과 모든 것이 잘 작동하는 것 같습니다. 그러나, 아이폰 사파리를 사용하여 앱을 사용하면 이메일을 보내지 않는 것 같습니다. 필자는 이것에 대해 영원히 머리를 긁적 거리고 있었고 누군가가이 이유가 무엇인지 알았다면 매우 감사 할 것입니다 !! 참고 Gmail 서비스를 사용하고 있지만 다른 주소 (이 경우 [email protected])로 메시지를 보내도록 Gmail을 설정했습니다. 아래 다음과 같이 내 코드는 다음과 같습니다Nodejs가 아이폰 브라우저에서 이메일을 보내지 못합니다.

이메일 전송 시스템 모듈 :

var nodemailer = require("nodemailer"); 

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

smtpTransport.sendMail({ 
from: "Sender <[email protected]>", 
to: email, 
subject: "blahblah", 
text: "blah blah blah", 
}, function(error, response){ 
if(error){ 
    console.log(error); 
} else{ 
    console.log("Success!"); 
} 
}); 
} 

exports.sendEmail = sendEmail; 

응용 프로그램 모듈 : 나는이 문제를 해결 한

var express = require("express"); 
var fs = require("fs"); 
var clientEmail = require("./clientEmail.js"); 
var profileEmail = require("./profileEmail.js"); 

var app = express(); 
app.use('/css', express.static(__dirname + '/css')); 
app.use('/img', express.static(__dirname + '/img')); 
app.use('/javascript', express.static(__dirname + '/javascript')); 
app.use(express.bodyParser()); 

var buf = fs.readFileSync("html/index.html"); 
var index = buf.toString(); 

app.get('/', function(request, response) { 
    response.send(index); 
}); 

app.post('/', function(request, response){ 
    var email = request.body.email; 
    var name = request.body.name; 
    var firstname = request.body.firstname; 

    clientEmail.sendEmail(firstname,email); 
    response.redirect('/'); 
}); 

var port = process.env.PORT || 5000; 
app.listen(port, function() { 
    console.log("Listening on " + port); 
}); 
+0

문제를 해결했습니다. 그것은 nodemailer와 관련이 없었습니다. 실제로 Safari와 호환되지 않는 javascript에서 toSource() 함수를 사용하고있었습니다. 귀하의 도움에 모두 감사합니다 – mathmonkey

+0

답변으로 의견을 작성하고 기꺼이 받아 들일 수 있습니까? – verybadalloc

답변

0

. 그것은 nodemailer와 관련이 없었습니다. 실제로 Safari와 호환되지 않는 javascript에서 toSource() 함수를 사용하고있었습니다. 도와 주셔서 감사합니다.