如何通过App Engine从非Gmail账户发送邮件

4 投票
1 回答
1139 浏览
提问于 2025-04-16 00:26

我已经成功通过Google App Engine发送了邮件。不过,唯一能正常工作的邮箱地址是我在网站上列为管理员的那个Gmail地址。我是在自己的域名上运行这个应用(这个域名是我通过Google Apps购买和维护的)。我希望能用自己的域名发送邮件。以下是相关的代码(或者类似的代码):

from google.appengine.api import mail

sender = "myaddress@google.com"
sender_i_want = "myaddress@mygoogleapp.com"

mail.send_mail(sender=sender,
    to="Albert Johnson <Albert.Johnson@example.com>",
    subject="Your account has been approved",
    body=some_string_variable)

当我尝试用自己的域名发送邮件时,出现的错误是“InvalidSenderError: Unauthorized sender”(无效的发件人错误:未授权的发件人)。我拥有这个域名,确实授权使用我的域名发送邮件,但我只需要知道怎么让App Engine相信这一点。

1 个回答

7

这是关于App Engine邮件API的一项限制:

发件人地址可以是应用程序的注册管理员的邮箱,或者是当前登录用户的邮箱(也就是发送消息的用户)。

如果你在那个域名上使用Google Apps,你应该可以拥有(或者创建)一个@那个域名.com的邮箱地址,并将其注册为App Engine应用的管理员,这样你就可以用那个地址发送邮件了。

撰写回答