golang : gmail でメールを送信する
#golang メールを送信するには の通りにやれば良い。
ただし、2段階認証を有効にしている場合には <password>
の部分にアプリパスワードを使う必要がある。アプリパスワードの発行 はリンク先から。アプリパスワードについての説明は アプリ パスワードでログイン 辺りを参照。
また、Subject などを含めるには smtp.SendMail
の msg
に指定する。これについては smtp - The Go Programming Language を参照。
func sendMail(subject, message string) error { auth := smtp.PlainAuth( "", "<sender>@gmail.com", // 送信に使うアカウント "<password>", // アカウントのパスワード or アプリケーションパスワード "smtp.gmail.com", ) return smtp.SendMail( "smtp.gmail.com:587", auth, "<sender>@gmail.com", // 送信元 []string{"<recipient>@gmail.com"}, // 送信先 []byte( "To: <recipient>@gmail.com\r\n" + "Subject:" + subject + "\r\n" + "\r\n" + message), ) }