Back to questions
Junior — Middle
79
Имел ли опыт работы с протоколом SMTP для отправки электронной почты?
Companies where asked
Астрал-Софт
Answer from AI
sobes.tech AI
В Go для отправки электронной почты через SMTP часто используется пакет net/smtp. Он позволяет установить соединение с SMTP-сервером, аутентифицироваться и отправить письмо.
Пример отправки простого письма:
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: Тестовое письмо\r\n" +
"\r\n" +
"Это тело письма.")
auth := smtp.PlainAuth("", from, password, smtpHost)
err := smtp.SendMail(smtpHost+":"+smtpPort, auth, from, to, message)
if err != nil {
log.Fatal(err)
}
}
В этом примере происходит подключение к SMTP-серверу с аутентификацией и отправка письма. Можно использовать TLS для безопасности, а также расширять письмо заголовками и вложениями.