1

登録時に確認メールを送信するAppEnginePython/Djangoアプリケーションがあります。SMTPサーバーをローカルにセットアップしておらず、ローカルサーバーをセットアップする予定もありません。

SMTPサーバーをローカルにセットアップしていないため、開発サーバーに新しいユーザーを登録すると、プログラムは次のエラーを生成します:「SMTPServerDisconnected:最初にconnect()を実行してください」。

https://developers.google.com/appengine/docs/python/tools/devserverのAppEngineドキュメントによると、引用:「SMTPまたはSendmailのいずれかでメールが有効になっていない場合、アプリケーションからメールを送信しようとすると、何もありません。アプリケーションで成功したように見えます。」

(1)開発サーバーでメールが失敗したときにこれらのエラーメッセージを抑制する、または(2)サーバーがメールを送信しようとしないようにするにはどうすればよいですか?ドキュメントは正しいですか?

私のアプリはタスクキューからメールを送信するため、この失敗により再試行が発生し、多くのエラーメッセージが生成され、ログで関連情報を確認することが困難になります。

4

1 に答える 1

2

ドキュメントは正しいですが、AppEngineメールAPIを参照しています。エラーメッセージに基づくと、SMTPサーバーに直接接続しようとするsmtplib(おそらくDjangoモジュール経由)を使用しているようです。最善の方法は、開発サーバーで実行されていることを検出し、表示されている例外をキャッチすることです。

于 2013-02-01T13:53:34.520 に答える