2015-03-26 35 views
5

Szukasz trochę wglądu w błąd, który dostaję.NodeMailer: getaddrinfo Błąd

na transporter.sendmail (func (err, info) {}), zmienna zwraca ten ERR:

{ [Error: getaddrinfo ENOTFOUND smtp.gmail.com] 
    code: 'ENOTFOUND', 
    errno: 'ENOTFOUND', 
    syscall: 'getaddrinfo', 
    hostname: 'smtp.gmail.com' } 

nie widzę żadnej dokumentacji błędu dla nodemailer na swojej stronie lub github, a ja nie znalazłem nic przydatnego w wyszukiwaniach Google. Najbliższy widzę to this SO post. Próbuję wysłać około 50 e-maili raz w tygodniu za pośrednictwem zadania cron.

Próbowałem tego i bez pakietu nodemailer-smtp-pool, a mój transporter aktualnie wygląda tak:

var transporter = nodemailer.createTransport(smtpPool({ 
    service: 'gmail', 
    auth: { 
    user: '[email protected]', 
    pass: 'xxx' 
    }, 
    maxConnections: 5, 
    maxMessages: 200 
})); 

nie jestem jeszcze z XOATH, bo nie jestem pod wrażeniem, że Potrzebuję. Usunąłem DisplayUnlockCaptcha dla konta Gmail, którego używam, ale nie sądzę, że jest to powiązane. Dla tego, co jest warte, używam stosu MEAN dla tej aplikacji.

Wygląda na to, że "smtp.gmail.com" nie zostanie znaleziony, gdy nodemailer wykona wywołanie getaddrinfo, ale nie rozumiem, dlaczego.

Każdy wgląd jest doceniana

edit:

od dewelopera nodemailer:

ENOTFOUND oznacza, że ​​aplikacja nie była w stanie żądanie DNS rekord smtp.gmail.com . Prawdopodobnie coś jest nie tak z twoim serwerem DNS. To jest obsługiwane przez Węzeł, a nie przez Nodemailera, nie ma nic Nodemailer można zrobić, jeśli nazwa hosta nie jest rozwiązany. Jeśli zdarzy się to losowo, możesz edytować aplikację, aby spróbować ponownie za chwilę.

i nie wygląda na to, że nodemailer obsługuje serwery proxy lub kiedykolwiek planuje. wygląda na ślepy zaułek.

+1

Czy próbowałeś używać 'secure: true'? Jak korzystać z hosta: smtp.gmail.com i portu: 465 zamiast opcji usługi? –

+0

Mam to do pracy przy użyciu 465 i wyraźnie zezwalając i odblokowując dostęp do aplikacji w ustawieniach zabezpieczeń Gmaila. – jamescampbell

Odpowiedz

1

Miałem ten sam błąd z moją konfiguracją nodemailer i naprawiłem to zmieniając hasło do Gmaila, aby nie zawierało żadnych znaków specjalnych.

+0

O człowieku, właśnie uratowałeś mnie od tak wielkiego bólu !! –