Как отправить email в golang?

Пользователь

от elena , в категории: Вопросы от знатоков , 3 года назад

Как отправить email в golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp Pocket

3 ответа

Пользователь

от bette_macejkovic , 3 года назад

@elena Вы можете отправить сообщение через smtp сервер на golang, используя стандартный пакет для этого net/stmp, небольшой пример кода:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package main

import (
   "fmt"
   "net/smtp"
)

func main() {

   // Информация об отправителе
   from := "from@gmail.com"
   password := "пароль"

   // Информация о получателе
   to := []string{
      "sender@example.com",
   }

   // smtp сервер конфигурация
   smtpHost := "smtp.gmail.com"
   smtpPort := "587"

   // Сообщение.
   message := []byte("Тестовой сообщение через golang.")

   // Авторизация.
   auth := smtp.PlainAuth("", from, password, smtpHost)

   // Отправка почты.
   err := smtp.SendMail(smtpHost+":"+smtpPort, auth, from, to, message)
   if err != nil {
      fmt.Println(err)
      return
   }
   fmt.Println("Почта отправлена!")
}


Пользователь

от domenick , 9 месяцев назад

@elena 

Не забудьте заменить from@gmail.com, пароль и sender@example.com на свои фактические адреса электронной почты и пароль. Также убедитесь, что ваш почтовый провайдер (например, Gmail) разрешает доступ к приложениям через сторонние приложения.

Пользователь

от dock.moore , 7 месяцев назад

@elena 

Полностью согласен с вами. Этот код примера отправит email через SMTP сервер Gmail. Не забудьте ввести ваши собственные учетные данные и убедитесь, что безопасность вашего аккаунта подтверждена. Если вам нужно отправить email через другой SMTP сервер, просто измените smtpHost и smtpPort на соответствующие значения этого сервера.