我正在处理用户注册时发送的电子邮件。我正在免费使用新的 SendGrid 帐户,但是当我运行我的函数时,它会向我显示以下错误,任何人都可以告诉我如何解决它。下面是我的 Golang 函数
func SendOtpMail(OTP string) (err error) {
from := mail.NewEmail("Test", "test@example.com")
subject := "Comfirmation Mail"
to := mail.NewEmail("puneet", "puneet123@gmail.com")
// plainTextContent := ""
htmlContent := "Your confirmation OTP is = " + OTP
message := mail.NewSingleEmail(from, subject, to, " ", htmlContent) // ("" = plainTextContent)
client := sendgrid.NewSendClient("Api_key")
response, err := client.Send(message)
fmt.Println(response)
fmt.Println(err)
return err
}
Run Code Online (Sandbox Code Playgroud)
作为响应,它将返回以下控制台输出:
&{403 {"errors":[{"message":"The from address does not match a verified Sender Identity. Mail cannot be sent until this error is resolved. Visit https://sendgrid.com/docs/for-developers/sending-email/sender-identity/ to see the Sender Identity requirements","field":"from","help":null}]} map[Access-Control-Allow-Headers:[Authorization, Content-Type, On-behalf-of, x-sg-elas-acl] Access-Control-Allow-Methods:[POST] Access-Control-Allow-Origin:[https://sendgrid.api-docs.io] Access-Control-Max-Age:[600] Connection:[keep-alive] Content-Length:[281] Content-Type:[application/json] Date:[Sat, 25 Apr 2020 12:56:25 GMT] Server:[nginx] X-No-Cors-Reason:[https://sendgrid.com/docs/Classroom/Basics/API/cors.html]]}
Run Code Online (Sandbox Code Playgroud)
我也在 2019 年实现了同样的功能,然后它可以工作,但现在我想更改它,然后这向我显示了这个错误。这个你能帮我吗。
根据 sendgrid 提供的文档。在发送任何电子邮件之前,您应该对发件人进行身份验证,
有两种方法可以做到这一点
请点击以下链接进行单一发件人身份验证
https://sendgrid.com/docs/ui/sending-email/sender-verification
小智 5
由于这是 sendgrid 为保护您的发送声誉和维护合法发送行为而创建的新设置,因此它们要求客户验证其发件人身份。由于这些旧的sendgrid账户不会受到影响,2020年4月6日之后创建的账户将可以进行发件人验证。
检查此文档以获取信息 - https://sendgrid.com/docs/ui/sending-email/sender-verification