gpt4 book ai didi

google-app-engine - 无法使用 App Engine 邮件包发送电子邮件?

转载 作者:IT王子 更新时间:2023-10-29 02:21:17 24 4
gpt4 key购买 nike

我是 AppEngine 和 golang 的新手,尝试使用以下代码发送电子邮件,但我没有收到任何邮件。云你帮忙修一下。

现在我直接从 App Engine 运行这段代码,如何从本地开发服务器测试它:已编辑 1:当我从本地开发运行时

dev_appserver.py --smtp_host=smtp.gmail.com --smtp_port=25
--smtp_user=venkatanagarajas@gmail.com --smtp_password=****** E:\GoWork\src\email\appenginemail

我遇到以下错误:

 From: venkatanagarajas@gmail.com
To: Srinadh <kasireddy002@gmail.com>
Subject: See you tonight
Body:
Content-type: text/plain
Data length: 41
ERROR 2018-02-02 00:17:00,318 api_server.py:407] Exception while handling mail.Send()
Traceback (most recent call last):
File "C:\Program Files\google-cloud-sdk\platform\google_appengine\google\appengine\tools\devappserver2\api_server.py", line 375, in _handle_POST
api_response = _execute_request(request).Encode()
File "C:\Program Files\google-cloud-sdk\platform\google_appengine\google\appengine\tools\devappserver2\api_server.py", line 231, in _execute_request
make_request()
File "C:\Program Files\google-cloud-sdk\platform\google_appengine\google\appengine\tools\devappserver2\api_server.py", line 226, in make_request
request_id)
File "C:\Program Files\google-cloud-sdk\platform\google_appengine\google\appengine\api\apiproxy_stub.py", line 151, in MakeSyncCall
method(request, response)
File "C:\Program Files\google-cloud-sdk\platform\google_appengine\google\appengine\api\mail_stub.py", line 311, in _Send
self._SendSMTP(mime_message, smtp_lib)
File "C:\Program Files\google-cloud-sdk\platform\google_appengine\google\appengine\api\mail_stub.py", line 233, in _SendSMTP
smtp.sendmail(mime_message['From'], tos, mime_message.as_string())
File "C:\Python27\lib\smtplib.py", line 744, in sendmail
senderrs[each] = (code, resp)
TypeError: unhashable instance

从本地开发服务器和 AppEngine 运行此代码

package app

import (
"net/http"

"google.golang.org/appengine"
"google.golang.org/appengine/log"
"google.golang.org/appengine/mail" )

func init() {
http.HandleFunc("/sendmail", handleIndex) }

func handleIndex(res http.ResponseWriter, req *http.Request) {
ctx := appengine.NewContext(req)

msg := &mail.Message{
Sender: "venkatanagarajas@gmail.com",
To: []string{"Srinadh <kasireddy002@gmail.com>"},
Subject: "See you tonight",
Body: "Don't forget our plans. Hark, 'til later.",
}
if err := mail.Send(ctx, msg); err != nil {
log.Errorf(ctx, "Alas, my user, the email failed to sendeth: %v", err)
} }

最佳答案

GAE 不在本地服务器上运行,您必须在本地配置 SMTP 并调用它们的方法

步骤:

  1. 本地安装 SMTP ( https://www.gazblog.com/2016/07/install-ssmtp-and-setup-with-gmail-on-ubuntu-16-04/ )

  2. 添加此代码以发送邮件 ( https://medium.com/@dhanushgopinath/sending-html-emails-using-templates-in-golang-9e953ca32f3d )

关于google-app-engine - 无法使用 App Engine 邮件包发送电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48562332/

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