我正在尝试使用 go-mail 库创建电子邮件服务并使其正常工作。然而,我无法解决的挑战很少我有表单数据的结构-type SendMailBody struct { EmailTo []string `form:"sendTo"` Subject string `form:"subject"` Body string `form:"body"`}我发送给 API 的表单数据是subject: NotificationsendTo:["abc@gmail.com", "xyz@gmail.com"]body:You have been notified挑战-如果我在“sendTO”中传递一封电子邮件,它工作正常。但是在通过邮件片段后,它无法将邮件发送给收件人。我怎样才能让它工作?如果我通过表单数据传递附件,我如何将它附加到邮件中。在文档中,提到我们可以那样做 "m.Attach("/tmp/image.jpg")" 。但是,如果我通过 API 中的表单数据传递附件,我应该怎么做请指导我。
1 回答
心有法竹
TA贡献1866条经验 获得超5个赞
这里需要一些更多的细节来提供帮助。特别是您使用的是哪个 go-mail?
对于 1.)
如果您参考https://github.com/wneessen/go-mail,使用Msg.To()
应该适用于多个收件人。请参阅文档:https ://pkg.go.dev/github.com/wneessen/go-mail#Msg.To
如果您参考https://github.com/go-mail/mail,则有Message.SetAddressHeader()
( https://pkg.go.dev/github.com/go-mail/mail?utm_source=godoc#Message.SetAddressHeader )不支持多个收件人地址。您需要改用Message.SetHeaders()
- "To"
header(https://pkg.go.dev/github.com/go-mail/mail?utm_source=godoc#Message.SetHeaders)。
对于 2.)
这完全取决于您如何阅读附件数据(同样也取决于您正在使用的 go-mail 库)。https://github.com/wneessen/go-mail有不同的附加和嵌入文件的方式(即来自本地文件,来自 embedFS,来自 io.Reader ...)
- 1 回答
- 0 关注
- 92 浏览
添加回答
举报
0/150
提交
取消