匿名和保密的应用程序设计

时间:2012-10-21 12:53:24

标签: google-app-engine email confidential

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

这是问题所在。从A到B 从B到A的通信是通过完全匿名的网络链接进行的,从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但删除这个问题? (例如,可以使用google“文档”,还是可以以某种方式省略我的返回电子邮件地址?)

2 个答案:

答案 0 :(得分:1)

Sending Mail docs州:

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),这不起作用。

答案 1 :(得分:1)

另一种选择是从app's own email addresses发送电子邮件。任何地址anything@appid.appspotmail.com(其中appid是您应用的应用ID)都是您应用的有效电子邮件地址,您可以发送和接收邮件。