Mail API를 사용하여 메일 수신

이 가이드에서는 Mail API를 사용하여 메일을 수신하는 방법을 설명합니다.

시작하기 전에

보내는 사람의 이메일을 승인된 보내는 사람으로 등록해야 합니다. 자세한 내용은 이메일을 보낼 수 있는 사람을 참조하세요.

메일 받기

수신 이메일을 다음과 같은 형식의 주소로 받도록 설정할 수 있습니다.

anything@appid.appspotmail.com

이메일을 받으려면 다음 안내를 따르세요.

  1. 앱의 app.yaml 파일에서 수신 메일을 사용 설정합니다.

    inbound_services:
    - mail
  2. HTTP POST 요청에서 MIME 데이터로 앱에 제공되는 수신 이메일을 처리하는 핸들러를 설정합니다.

    1. 앱에서 /_ah/mail/ 경로에 핸들러를 등록합니다.

      func init() {
      	http.HandleFunc("/_ah/mail/", incomingMail)
      }
      
    2. 핸들러에서 *http.Request의 이메일 데이터를 읽습니다.

      func incomingMail(w http.ResponseWriter, r *http.Request) {
      	ctx := appengine.NewContext(r)
      	defer r.Body.Close()
      	var b bytes.Buffer
      	if _, err := b.ReadFrom(r.Body); err != nil {
      		log.Errorf(ctx, "Error reading body: %v", err)
      		return
      	}
      	log.Infof(ctx, "Received mail: %v", b)
      }
      

    표준 라이브러리의 net/mail 패키지를 사용하여 메일 메시지를 파싱할 수 있습니다.