2016-06-27 10 views
1

Ich versuche, eine E-Mail mit Go zu senden. aber ich versuche, meine Host benutzerdefinierte Mail-Server wich zu verwenden sind die folgendenGo smtp send email

enter image description here

So bin ich nicht ganz sicher, was soll ich hier verwenden. Ich tue die folgenden

auth := smtp.PlainAuth("", "[email protected]", "password", "mail.icon-universe.com") 
log.Println(smtp.SendMail("mail.icon-universe.com:25", auth, "[email protected]", []string{"[email protected]"}, []byte("This is a simple test"))) 

Dies würde jedoch gibt Sie mir die folgenden Fehlern

x509: Zertifikat ist gültig für server.premierehost.net, www.server.premierehost.net, nicht senden. icon-universe.com

So dann habe ich versucht, die folgende

auth := smtp.PlainAuth("", "[email protected]", "password", "server.premierehost.net") 
log.Println(smtp.SendMail("server.premierehost.net:465", auth, "[email protected]", []string{"[email protected]"}, []byte("thanks for loggin in"))) 

Allerdings würde dies meine App einfach in eine Endlosschleife versetzen ...

Welche Verbindungsdetails sollte ich verwenden?

--- Aktualisieren

I go-Mail, um zu versuchen entschieden und scheint zu funktionieren, aber nicht für @googlemail

d := gomail.NewDialer("server.premierehost.net", 465, "[email protected]", "password") 
m := gomail.NewMessage() 
m.SetHeader("From", "[email protected]") 
m.SetHeader("To", "[email protected]") 
m.SetHeader("Subject", "Hello!") 
m.SetBody("text/html", "Hello <b>Bob</b> and <i>Cora</i>!") 
log.Println(d.DialAndSend(m)) 

Dies funktioniert und die E-Mail wird angezeigt, aber das Senden zu @ gmail.com wont (die E-Mail wird nie ankommen)

Antwort

0

Sie scheinen gomail korrekt zu verwenden, aber Sie sollten sicherstellen, dass das E-Mail-Konto auf gmail, von dem Sie versuchen möchten, weniger sichere Apps aktiviert hat, da dies sonst nie gesendet wird.