1 回答

TA貢獻(xiàn)1826條經(jīng)驗(yàn) 獲得超6個(gè)贊
回答:
您需要在郵件正文中附加內(nèi)聯(lián)文件。
代碼:
message := gmail.Message
attachmentBytes := ioutil.ReadFile(fileDir + fileName)
attachmentMimeType: = http.DetectContentType(attachmentBytes)
attachmentData: = base64.StdEncoding.EncodeToString(attachmentBytes)
boundary: = randStr(32, "alphanum")
messageBody: = [] byte("Content-Type: multipart/mixed; boundary=" + boundary + " \n" +
"MIME-Version: 1.0\n" +
"to: " + config.CSVReference.Elem(person, config.PlugIns[0].ToEmail).String() + "\n" +
"from: " + config.FromAddress + "\n" +
"subject: " + config.EmailSubject + "\n\n" +
"--" + boundary + "\n" +
"Content-Type: text/plain; charset=" + string('"') + "UTF-8" + string('"') + "\n" +
"MIME-Version: 1.0\n" +
"Content-Transfer-Encoding: 7bit\n\n" +
content + "\n\n" +
"--" + boundary + "\n" +
"Content-Type: " + "image/jpg" + "; name=" + string('"') + fileName + string('"') + " \n" +
"MIME-Version: 1.0\n" +
"Content-Transfer-Encoding: base64\n" +
"Content-Disposition: attachment; filename=" + string('"') + fileName + string('"') + " \n\n" +
chunkSplit(attachmentData, 76, "\n") +
"--" + boundary + "--")
message.Raw = base64.URLEncoding.EncodeToString(messageBody)
_, err := service.Users.Messages.Send("me", &message).Do()
if err != nil {
log.Fatalf("Email sending failed: %v", err)
} else {
log.Println("Email message sent")
}
- 1 回答
- 0 關(guān)注
- 211 瀏覽
添加回答
舉報(bào)