我正在使用gomail.v2发送电子邮件,我的代码工作正常。编写消息msg
后,我可以运行
import ("gopkg.in/gomail.v2")
...
d := gomail.NewDialer("smtp.example.com", 25, "username", "password")
return d.DialAndSend(msg)
}
当然,我想通过一个特定的用户名和密码对此进行概括,并将其分为自己的功能,因此我将其删除:
import ("gopkg.in/gomail.v2")
...
d := MyDialer()
return d.DialAndSend(msg)
}
func MyDialer() *Dialer {
return gomail.NewDialer("smtp.example.com", 25, "username", "password")
}
但是提示,他们不了解Dialer。
为什么是这样?我使用的返回类型与
NewDialer
相同,这不会引起任何问题。func NewDialer(host string, port int, username, password string) *Dialer
我想念什么?我跑了
确保我不是以某种方式运行过时的软件包,但那里没有运气。
最佳答案
*Dialer
和*gomail.Dialer
是2种不同的类型。特定的错误是因为您的软件包中没有定义Dialer
类型,但是您需要匹配签名中的类型,而不仅仅是名称。由于gomail.NewDialer
返回*gomail.Dialer
,请使用:
func MyDialer() *gomail.Dialer {
关于email - 使用gomail.v2创建新的* Dialer,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44400384/