我正在试用 GAE,但在开发和生产中从我的应用程序发送电子邮件时遇到了一些问题。我知道开发服务器首先需要一些配置,但生产应该发送电子邮件。查看控制台时我看不到任何错误(我通过终端窗口启动服务器),生产应用程序中也没有报告任何错误。
代码:
def contactSend():
message = mail.EmailMessage()
message.sender = "myaddress@gmail.com"
message.to = "myaddress@gmail.com"
message.subject = "Test email from python"
message.body = "This is the test"
message.send()
到目前为止我检查过的内容: 代码似乎是正确的。 - 发件人(和收件人)地址具有项目的管理员级别权限。 -项目配置为 Python 2.7(我猜是 2.5 上的一些问题)。 -我的垃圾邮件文件夹。
我确信我可能遗漏了一些简单的东西,因为我是 GAE 的新手。任何想法将不胜感激。
编辑:我也尝试过 mail.sendmail:
mail.send_mail(sender="myaddress@gmail.com",
to="myaddress@gmail.com",
subject="This is the test 1124pm",
body="TEST!")
那里也不走运。可能我需要注册域或设置 Google Apps 帐户?
Edit2 上午 11:52:我尝试了一个 check_valid_email 以确保结果是正确的。我看到了“send_mail_to_admins”函数并试了一下,假设它可能限制较少并且可能有效,但也没有。
Edit3:我不知道它是否有帮助,但这是请求处理程序:
class contactSend(webapp2.RequestHandler):
def post(self):
self.response.headers['Content-Type'] = 'text/html'
contactSend()
self.response.out.write("sent! ")
最佳答案
您的代码片段似乎是正确的(除了第一个函数的缩进不正确),所以我将提供一些调试信息来帮助您解决问题。
- 检查您的应用程序的日志,看看您的代码是否引发任何异常,这可能会阻止事情按预期工作。
https://appengine.google.com/logs?&app_id= YOUR_APP_ID - 检查您申请的配额详细信息,查看是否已发送任何电子邮件。 https://appengine.google.com/dashboard/quotadetails?&app_id= YOUR_APP_ID
- 确保
发件人
电子邮件地址已接受 App Engine 邀请,并且未在“权限”页面上列为“待处理”。 https://appengine.google.com/permissions?&app_id= YOUR_APP_ID - 仔细检查
to
和sender
电子邮件地址。复制/粘贴它们并尝试通过您选择的电子邮件应用程序直接向他们发送电子邮件。
关于Python GAE 发送电子邮件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18929505/