수색…


통사론

  • func PlainAuth (ID, 사용자 이름, 암호, 호스트 문자열) Auth
  • func SendMail (addr 문자열, Auth, 문자열에서 [] 문자열, msg [] 바이트) 오류

smtp.SendMail ()으로 이메일 보내기

이메일 보내기는 Go에서 매우 간단합니다. 전자 메일이 필요한 스타일을 지정하는 RFC 822를 이해하는 데 도움이됩니다. 아래 코드는 RFC 822 호환 전자 메일을 보냅니다.

package main

import (
    "fmt"
    "net/smtp"
)

func main() {
    // user we are authorizing as
    from := "[email protected]"

    // use we are sending email to
    to := "[email protected]"

    // server we are authorized to send email through
    host := "mail.example.com"

    // Create the authentication for the SendMail()
    // using PlainText, but other authentication methods are encouraged
    auth := smtp.PlainAuth("", from, "password", host)

    // NOTE: Using the backtick here ` works like a heredoc, which is why all the 
    // rest of the lines are forced to the beginning of the line, otherwise the 
    // formatting is wrong for the RFC 822 style
    message := `To: "Some User" <[email protected]>
From: "Other User" <[email protected]>
Subject: Testing Email From Go!!

This is the message we are sending. That's it!
`

    if err := smtp.SendMail(host+":25", auth, from, []string{to}, []byte(message)); err != nil {
        fmt.Println("Error SendMail: ", err)
        os.Exit(1)
    }
    fmt.Println("Email Sent!")
}

위와 같이하면 다음과 같은 메시지가 전송됩니다.

To: "Other User" <[email protected]>
From: "Some User" <[email protected]>
Subject: Testing Email From Go!!

This is the message we are sending. That's it!
.


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow