1

我目前有两个双应用程序,TellMeStraightSuggestionDrop,它们可以工作,但有一个小缺陷,这个问题是针对的。这两个应用程序是相同的,只是 TellMeStraight 的某些措辞面向与个人的沟通,而 SuggestionDrop 的措辞针对与公司/组织的沟通。这两个应用程序的目的是允许 (A) 个人或公司/组织与其 (B) 学生/客户/客户/成员/等进行保密/匿名对话。

这是问题所在。虽然从 A 到 B从 B 到 A 的通信是通过一个完全匿名的 Web 链接进行的,但从 B 到 A 的(电子邮件)通信 似乎来自 ,而不是来自 A,并且在使用该系统时 A 似乎会迷失方向. 问题是 gae 只允许从应用程序所有者发送电子邮件,而不是应用程序用户。您可以从下面代码中的注释行中看出问题所在;当我尝试使用注释掉的行时出现系统错误。(顺便说一句,为了安全起见,我在下面更改了自己的电子邮件地址。)

class SendMessage(webapp.RequestHandler):
    def post(self):
        ID_id = self.request.get('ID')
        handle = self.request.get('handle')
        handle = ''.join(handle.split())
        comment = self.request.get('comment')
        key = db.Key.from_path("Person", ID_id)
        person = Person.get(key)
        user_address = person.address
        #sender_address = person.address
        sender_address = 'example@mail.com'
        subject = person.title

所以我的问题是,你对如何重新设计这个应用程序以继续使用 gae 并消除这个问题有什么建议吗?(例如,是否可以使用谷歌“文档”,或者是否可以以某种方式省略我的返回电子邮件地址?)

4

2 回答 2

1

另一种选择是从应用程序自己的电子邮件地址发送电子邮件。任何地址anything@appid.appspotmail.comappid您的应用程序的应用程序 ID 在哪里)都是您的应用程序的有效电子邮件地址,您可以在该地址上发送和接收邮件。

于 2012-10-22T12:22:08.417 回答
1

发送邮件文档状态:

The sender can also be the Google Account email address of the current user who is signed in, if the user's account is a Gmail account or is on a domain managed by Google Apps.

因此,如果用户通过 Google 帐户系统登录,您可以在用户的​​电子邮件地址下发送电子邮件。Afaik,如果您使用联合登录 (OpenID),这将不起作用。

于 2012-10-22T04:34:33.037 回答