3
gomail.v2経由で電子メールを送信する唯一の方法は、forループ内の各電子メールに対してSend()関数を使用することです。しかし、同じメールが送信された他のメールアドレスを表示する必要があります。それが唯一の文字列の最初の受信者に電子メールを送信することによって動作gomail.v2を使って複数の受信者にGolang
var emails bytes.Buffer
mail.SetAddressHeader("From", "[email protected]", "My Name")
mail.SetHeader("Subject", os.Args[2])
mail.SetBody("text/html", os.Args[1])
for _, recipient := range os.Args[3:] {
emails.WriteString(recipient + ",")
}
mail.SetHeader("To", emails.String())
if err := dialer.DialAndSend(mail); err != nil {
log.Printf("Could not send email to %q: %v", buffer, err)
panic(err)
}
:
for _, recipient := range os.Args[3:] {
mail.SetAddressHeader("From", "[email protected]", "My Name")
mail.SetHeader("To", recipient)
mail.SetHeader("Subject", os.Args[2])
mail.SetBody("text/html", os.Args[1])
if err := dialer.DialAndSend(mail); err != nil {
log.Printf("Could not send email to %q: %v", recipient, err)
panic(err)
}
}
私のようなものを見つけました。 GmailやOutlookなどのメールマネージャでは、他の受信者のアドレスは表示されますが送信されません。
どうすればよいですか?
どうもありがとう。 – Khazs
"addresses ..."(3ドット?)を意味するもの – Khazs
...スライス展開のためのGo言語の構成です: アドレスに3つの要素がある場合 '' 'mail.SetHeader ...) '' ' は、 と等しくなります。' '' mail.SetHeader( "To"、addresses [0]、addresses [1]、addresses [2]) '' ' –