AppEngineがローカルで実行中(つまりdev_appserver.py)にメールを送信できるようにsendmailを使用しています。ここに私のコードは次のとおりです。AppEngineとsendmailのスペースの問題
mail.send_mail(
sender="SenderName <[email protected]",
to= "ReceiverName <[email protected]>",
subject=subject,
body=text,
html=html)
私は、適切な電子メールや他のパラメータと、このコードを実行すると、私はこのエラーを取得:
/bin/sh: Syntax error: end of file unexpected
ERROR 2010-12-23 19:31:16,459 mail_stub.py:177] Error sending mail using sendmail: [Errno 32] Broken pipe
いくつかの調査の後には、エラー(つまり、壊れたパイプことが判明しました)は「送信者」と「宛先」の電子メールの構文のために発生します。私が(名前ではなく)電子メールだけを保持すれば、問題は解決されます。これはAppEngineが適切な引用符なしでsendmailにパラメータをダンプしていることを伝えます。だから、のようなもの:シェルはそれが送信者の電子メールの一部であり、知ることができないので、明らかに
sendmail .... SenderName <[email protected]> ReceiverName <[email protected]>
が、これはパラメータの競合が発生しますが、これは問題を引き起こしています。
どのようにこの問題を解決するためのアイデアですか?私は電子メールに名前を残したい。
ところで、これはAppEngineに自分のコードをアップロードするときにうまく動作しますが、テストするたびにコードを変更する必要がないように、ローカルでも解決したいと考えています。
おかげで非常に多くの人で、アドレスの前後に引用符を追加するためのパッチが含まれてApp Engineの問題追跡、このため問題があります! – Rafid