Sobes.tech
Junior — Middle

Έχετε εμπειρία με το πρωτόκολλο SMTP για την αποστολή email;

sobes.tech AI

Απάντηση από AI

Στη Go, για την αποστολή email μέσω SMTP, συχνά χρησιμοποιείται το πακέτο net/smtp. Επιτρέπει τη σύνδεση με τον διακομιστή SMTP, την αυθεντικοποίηση και την αποστολή του μηνύματος.

Παράδειγμα αποστολής ενός απλού email:

package main

import (
	"net/smtp"
	"log"
)

func main() {
	from := "sender@example.com"
	password := "password"
	to := []string{"recipient@example.com"}
	smtpHost := "smtp.example.com"
	smtpPort := "587"

	message := []byte("Subject: Δοκιμαστικό email\r\n" +
		"\r\n" +
		"Αυτό είναι το σώμα του email.")

	auth := smtp.PlainAuth("", from, password, smtpHost)

	err := smtp.SendMail(smtpHost+":"+smtpPort, auth, from, to, message)
	if err != nil {
		log.Fatal(err)
	}
}

Σε αυτό το παράδειγμα, γίνεται σύνδεση με τον διακομιστή SMTP με αυθεντικοποίηση και αποστέλλεται το email. Μπορεί να χρησιμοποιηθεί TLS για ασφάλεια, καθώς και να προστεθούν επικεφαλίδες και συνημμένα στο email.