Google应用引擎发送邮件服务引发异常

时间:2011-08-20 09:22:24

标签: google-app-engine

我试图在我的网站上使用应用引擎邮件发送服务。 目前,我已经做了一些简单的事情:

message = mail.EmailMessage(sender="Subhranath Chunder <subhranath@gmail.com>", \
                                    subject="Your account has been approved")
message.to = "Subhranath Chunder <subhranathc@yahoo.com>"
message.body = "Just another message"
message.send()

但每次代码处理程序都会引发此错误:

2011-08-20 04:44:36.988
ApplicationError: 1 Internal error
Traceback (most recent call last):
  File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/_webapp25.py", line 703, in __call__
    handler.post(*groups)
  File "/base/data/home/apps/s~subhranath/0-2.352669327317975990/index.py", line 71, in post
    message.send()
  File "/base/python_runtime/python_lib/versions/1/google/appengine/api/mail.py", line 895, in send
    raise e
ApplicationError: ApplicationError: 1 Internal error

我的代码是不同的版本,而不是默认版本。我无法将此版本更改为默认版本,除非此错误得到解决。知道为什么会这样吗?

2 个答案:

答案 0 :(得分:0)

发件人必须具有特权或登录用户。所以subhranath@gmail.com应该拥有您所在位置的管理员权限,或者是登录用户来运行您的代码。

最基本的例子就是HTTP发送电子邮件:

  def get(self):    
    message = mail.EmailMessage(sender='subhranath_app_admin@gmail.com', subject='Email')
    message.to='any...@gmail.com'
    message.body = os.environ.get('HTTP_HOST')      
    message.send() 

如果您想以登录用户身份发送电子邮件,可以将发件人变为变量:

senderemail = users.get_current_user().email() if users.get_current_user() else 'subhranath@gmail.com'

我认为您发布的错误消息不是很清楚,如果它仍然存在,我建议使用日志记录和异常获取有关错误消息的更多信息。

答案 1 :(得分:0)

似乎是一个应用引擎系统故障。相同的代码现在正在运行,没有任何新的部署。