Ricezione della posta con l'API Mail

Questa guida descrive come utilizzare l'API Mail per ricevere email.

Prima di iniziare

Devi registrare le email dei mittenti come mittenti autorizzati. Per saperne di più, consulta Chi può inviare email.

Ricevere email

Puoi configurare la tua app per ricevere email in arrivo agli indirizzi nel seguente formato:

anything@appid.appspotmail.com

Per ricevere email:

  1. Attiva le email in arrivo nel file app.yaml della tua app:

    inbound_services:
    - mail
  2. Configura un gestore per elaborare le email in arrivo, che vengono fornite alla tua app come dati MIME in una richiesta HTTP POST.

    1. Nella tua app, registra un gestore per il percorso /_ah/mail/:

      func init() {
      	http.HandleFunc("/_ah/mail/", incomingMail)
      }
      
    2. Nel gestore, leggi i dati dell'email da *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)
      }
      

    Puoi utilizzare il net/mail pacchetto nella libreria standard per analizzare i messaggi email.