Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java GAE从gmail帐户发送电子邮件_Java_Google App Engine_Email - Fatal编程技术网

Java GAE从gmail帐户发送电子邮件

Java GAE从gmail帐户发送电子邮件,java,google-app-engine,email,Java,Google App Engine,Email,如何使用Google App Engine从Gmail帐户发送电子邮件?发件人地址是问题所在,这是可以理解的,因为垃圾邮件的限制。(此处有限制:) 目标:我希望用户访问该网站,注册使用该服务(通过OAuth)。该服务将能够发送“发件人地址”设置为用户电子邮件地址的电子邮件。(服务:发送电子邮件的电子表格公式) 相关问题: 选项: 1) 避免使用JavaMail:通过HTTP发送电子邮件似乎只需支付少量费用。可以使用:Amazon SES aws.Amazon.com/SES/ 不可能 2) co

如何使用Google App Engine从Gmail帐户发送电子邮件?发件人地址是问题所在,这是可以理解的,因为垃圾邮件的限制。(此处有限制:)

目标:我希望用户访问该网站,注册使用该服务(通过OAuth)。该服务将能够发送“发件人地址”设置为用户电子邮件地址的电子邮件。(服务:发送电子邮件的电子表格公式)

相关问题:

选项:

1) 避免使用JavaMail:通过HTTP发送电子邮件似乎只需支付少量费用。可以使用:Amazon SES aws.Amazon.com/SES/

不可能 2) contextIO-建议使用contextIO。更新: 不发送电子邮件,请参阅

3) OAuth-看起来您可以使用OpenID作为当前登录用户发送电子邮件。因此,或许可以使用OAuth进行脱机发送。(用户界面) )

4) 发送方验证-(仅可用于测试,而不是生产质量解决方案)应用程序引擎已将“邀请用户在此应用程序上进行协作”作为查看器。可能有一个用于添加协作者的API


挑选了5)Socket/SMTP试用版-(仅限已验证的SMTP)在2012年9月,谷歌发布了

我还没有在生产中尝试过,但我已经设置了GAE dev服务器,以绕过谷歌的邮件系统,直接与SMTP服务器对话。看我的。如果你能在生产环境中做到这一点,你所需要的就是在某处安装一个SMTP服务器来发送你的电子邮件。

我还没有在生产环境中尝试过这一点,但我已经将GAE dev服务器设置为绕过谷歌的邮件系统,直接与SMTP服务器通信。看我的。如果您可以在生产环境中实现这一点,那么您只需要在某处安装一个SMTP服务器,用于发送电子邮件。

好消息是,随着GAE SDK 1.7.7的推出,您可以直接与IMAP和SMTP通信,请参阅博客文章


关键的新功能(预览版)是“出站套接字”

好消息是,随着GAE SDK 1.7.7的推出,可以直接与IMAP和SMTP通信,请参阅博客文章


关键的新功能(在预览中)是“出站套接字”

简而言之,您将无法通过OAuth实现这一点。主要原因是,通常不可能(可靠地、连续地)代表随机用户(即不在您控制的域中的用户)批量发送邮件

  • 如果您使用OAuth,则需要在OAuth过程中请求访问用户配置文件/电子邮件。这因供应商而异。一些提供商从不提供电子邮件(Twitter)。请参阅提供统一API以从不同提供者检索用户OAuth配置文件的库

  • 当(如果)您从OAuth获得电子邮件地址时,您将需要代表该用户发送电子邮件。由于您的SMTP服务器未被授权代表随机用户发送电子邮件(请参阅和),您将很快进入垃圾邮件列表并被阻止。如果这很容易,那么垃圾邮件发送者的生活就会很轻松

  • 您可以从AppEngine代表用户发送电子邮件,但前提是用户通过登录,这仅适用于Gmail或Google Apps帐户

  • 在GAE上,您可以通过新的SMPT服务器轻松地使用外部SMPT服务器(在sdk 1.7.7中,它刚刚从trusted tester特性转变为实验特性)。我们有这个设置,它的工作没有问题,使用一个大型的外部SMTP服务。但是考虑到上面的第2点,这对您想要实现的目标没有多大帮助


  • 简而言之,您将无法通过OAuth实现这一点。主要原因是,通常不可能(可靠地、连续地)代表随机用户(即不在您控制的域中的用户)批量发送邮件

  • 如果您使用OAuth,则需要在OAuth过程中请求访问用户配置文件/电子邮件。这因供应商而异。一些提供商从不提供电子邮件(Twitter)。请参阅提供统一API以从不同提供者检索用户OAuth配置文件的库

  • 当(如果)您从OAuth获得电子邮件地址时,您将需要代表该用户发送电子邮件。由于您的SMTP服务器未被授权代表随机用户发送电子邮件(请参阅和),您将很快进入垃圾邮件列表并被阻止。如果这很容易,那么垃圾邮件发送者的生活就会很轻松

  • 您可以从AppEngine代表用户发送电子邮件,但前提是用户通过登录,这仅适用于Gmail或Google Apps帐户

  • 在GAE上,您可以通过新的SMPT服务器轻松地使用外部SMPT服务器(在sdk 1.7.7中,它刚刚从trusted tester特性转变为实验特性)。我们有这个设置,它的工作没有问题,使用一个大型的外部SMTP服务。但是考虑到上面的第2点,这对您想要实现的目标没有多大帮助


  • 我们最终使用外部亚马逊SES服务的电子邮件,因为谷歌限制我们在“发件人:”字段只允许应用程序管理员电子邮件地址。我们试图切换DKIM或SPF记录,但这对我们没有帮助,谷歌在这方面非常严格。

    我们最终使用外部Amazon SES服务处理电子邮件,因为谷歌限制了us-in“from:”字段仅允许使用应用程序管理员电子邮件地址。我们试图切换DKIM或SPF记录,但这对我们没有帮助,谷歌在这方面非常严格。

    1)不,好吧;还有2)最简单的方法,IMHO 3)只有在有HTTP api的情况下,我看不出有一个4)听起来是错误的方法谢谢,做了更多的搜索。contextIO不发送电子邮件:(>套接字API允许您使用SMTP(仅限经过身份验证的SMTP)。从这里开始:Mail API又出了什么问题?为什么你不能简单地在管理控制台中添加开发人员帐户,然后使用Mail API?@Ezra谢谢你的提问,短期内开发人员帐户是可以的,但长期而言我需要一个更好的解决方案。2个原因:安全性和注册过程。安全性是一个问题,因为他们可以