2

Google-App-Engine を使用して Gmail アカウントからメールを送信するにはどうすればよいですか? 送信者のアドレスが問題です。これは当然のことながら、スパムのために制限されています。(制限はこちら: https://developers.google.com/appengine/docs/java/mail/usingjavamail#Senders_and_Recipients )

目的: ユーザーに Web サイトにアクセスしてもらい、サービスを使用するために登録してもらいます (OAuth 経由)。また、サービスは「送信者アドレス」をユーザーのメールアドレスに設定してメールを送信できるようになります。(サービス:メール送信表計算式)

関連する質問: Google App Engine から Gmail アカウントにアクセスする

オプション:

1) JavaMail を避ける: HTTP 経由の電子メールは、少額の料金で機能するように見えます。使用できます: Amazon SES aws.amazon.com/ses/

不可能 2) contextIO -一部の人々は contextIO を提案しました。更新: 電子メールを送信しません。http://context.io/docs/2.0を参照してください。

3) OAuth - OpenID を使用して、現在ログインしているユーザーとしてメールを送信できるようです。ということで、OAuth によるオフライン送信が可能になるかもしれません。(ユーザー API https://developers.google.com/appengine/docs/java/users/ )

4) 送信者の検証 - (製品品質のソリューションではなく、テストにのみ使用できます) App Engine には、ビューアーとして「このアプリケーションで共同作業するユーザーを招待する」機能があります。共同作業者を追加するための API があるかもしれません。

選択5) ソケット/SMTP トライアル - (認証された SMTP のみ) 2012 年 9 月に Google がhttp://googleappengine.blogspot.com.au/2012_09_01_archive.htmlを投稿

4

4 に答える 4

2

幸いなことに、GAE SDK 1.7.7 の登場により、IMAP および SMTP と直接通信できるようになります。ブログ投稿http://googleappengine.blogspot.be/2013/04/app-engine-177-を参照してください。 release.html

重要な新機能 (プレビュー中) は「アウトバウンド ソケット」です。

于 2013-04-10T09:09:23.853 に答える
1

一言で言えば、OAuth を介してそれを行うことはできません。主な理由は、無作為なユーザー、つまりあなたが管理しているドメインに属していないユーザーに代わって大量のメールを (確実に、継続的に) 送信することは一般的に不可能だからです。

  1. OAuth を使用する場合は、OAuth 手順中にユーザー プロファイル/電子メールへのアクセスを要求する必要があります。これはプロバイダーによって異なります。プロバイダーによっては、メールを利用できない場合があります (Twitter)。さまざまなプロバイダーからユーザーの OAuth プロファイルを取得するための統合 API を提供するpac4jライブラリを参照してください。

  2. OAuth から電子メール アドレスを取得する場合 (およびその場合)、そのユーザーに代わって電子メールを送信する必要があります。SMTP サーバーはランダムなユーザーに代わって電子メールを送信することを許可されていないため ( SPFおよびDKIMを参照)、すぐにスパム リストに登録されてブロックされます。これが簡単にできれば、スパマーの生活は楽になるでしょう。

  3. AppEngine からユーザーに代わってメールを送信できますが、ユーザーがユーザー Java API経由でログインしている場合に限られます。これは、Gmail または Google Apps アカウントでのみ使用できます。

  4. GAE では、新しいOutbound Sockets APIを介して、外部 SMPT サーバーを簡単に使用できます(これは、信頼できるテスター機能から sdk 1.7.7 の実験的機能になりました)。このセットアップがあり、大規模な外部 SMTP サービスを使用して問題なく動作します。しかし、上記のポイント 2 を考慮すると、これは達成したいことにはあまり役立ちません。

于 2013-04-11T20:48:01.927 に答える
1

Googleが私たちを制限したため、電子メールに外部のAmazon SESサービスを使用することになりました-「from:」フィールドでは、アプリ管理者の電子メールアドレスのみが許可されました。DKIM または SPF レコードを切り替えようとしましたが、これは役に立ちませんでした。Google はこれに関して非常に厳格です。

于 2013-04-12T05:08:19.490 に答える
1

私は実稼働環境でこれを試していませんが、Google のメール システムをバイパスして SMTP サーバーと直接通信するように GAE 開発サーバーをセットアップしました。別の質問に関する私の回答を参照してください。実稼働環境でこれを実行できる場合、必要なのは、電子メールを送信する SMTP サーバーだけです。

于 2013-04-10T05:59:18.467 に答える