gpt4 book ai didi

go - 使用SMTP在Gmail帐户中发送电子邮件

转载 作者:行者123 更新时间:2023-12-03 10:08:33 26 4
gpt4 key购买 nike

我想向我的Gmail帐户发送测试电子邮件
因此,我尝试了https://golang.org/src/net/smtp/example_test.go的此代码段

func ExampleSendMail() {
// Set up authentication information.
auth := smtp.PlainAuth("", "user@example.com", "password", "mail.example.com")

// Connect to the server, authenticate, set the sender and recipient,
// and send the email all in one step.
to := []string{"recipient@example.net"}
msg := []byte("To: recipient@example.net\r\n" +
"Subject: discount Gophers!\r\n" +
"\r\n" +
"This is the email body.\r\n")
err := smtp.SendMail("mail.example.com:25", auth, "sender@example.org", to, msg)
if err != nil {
log.Fatal(err)
}
}

然而。我收到此错误消息。
dial tcp 74.125.23.109:25: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
帮助我了解此问题的根本原因是什么。

最佳答案

我将假设在您的实际代码中,您使用的是真实的服务器域和端口,而不是mail.example.com。
从错误消息中可以明显看出,您尝试连接的SMTP服务器没有响应,并且您的请求已超时。您必须确保在正确的端口(SendMail调用中的mail.example.com:25部分)与有效的SMTP服务器联系。
一种简单的检查方法是转到您的终端并运行:

telnet server.anexampledomain.net 25   # replace with domain and port in question
看看您是否得到像这样的答案:
Trying 74.125.23.109...
Connected to 74.125.23.109.
Escape character is '^]'.
220 smtp.gmail.com ESMTP x3sm2050129pfp.98 - gsmtp
这告诉您服务器是可访问的,并且可以打开SMTP连接。
如果您编写了正确的服务器域和端口,并且无法通过上述方法与服务器联系,则问题出在您的网络而不是您编写的代码。

关于go - 使用SMTP在Gmail帐户中发送电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65900604/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com