3

テキストが添付されたメールを送信できません(添付がない場合は、すべて問題ありません)。actionmailer 3.2.11を使用していて、AmazonSESを介してEメールを送信しようとしています。私には、amazonsnmpサーバーが私が作成するEメー​​ルに問題があるように見えます。電子メールを生成するコードは次のようになります。

class ServiceMailer < ActionMailer::Base
    default from: "noreply@dungeonpilot.com"


    def server_crashed log_file_names
        attachments[ 'foo.txt' ] = 'Hallo'
        mail to: 'Txxx@xxzki.de', subject: '[dungeonpilot] Server Crashed'
   end
end

メール送信時のエラーメッセージ:Net::SMTPFatalError: 554 Transaction failed: Missing start boundary

結果のメールは次のとおりです。

Date: Fri, 08 Feb 2013 10:11:09 +0000
From: noreply@dungeonpilot.com
To: Txxx@xxxzki.de
Message-ID: <5114cf3dc4886_701165e7f848869@ip-10-62-103-46.mail>
Subject: [dungeonpilot] Server Crashed
Mime-Version: 1.0
Content-Type: multipart/mixed;
 charset=UTF-8
Content-Transfer-Encoding: 7bit



--
Date: Fri, 08 Feb 2013 10:11:09 +0000
Mime-Version: 1.0
Content-Type: text/plain;
 charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename=foo.txt
filename: foo.txt
Content-ID: <5114cf3d55085_701165e7f8487cc@ip-10-62-103-46.mail>

Hallo

----

これをテストメールとしてSESに配信すると、「開始境界がありません」という結果になります。ですから、配信されたコンテンツに何か問題があるに違いないと思います。

ビューフォルダには、.txt.erbテンプレートが1つだけありました。.html.erbテンプレートを追加しましたがboundary="、メール部分の間に-headerと境界があります。

Date: Fri, 08 Feb 2013 10:26:57 +0000
From: noreply@dungeonpilot.com
To: Torsten@Robitzki.de
Message-ID: <5114d2f1b8175_702812508041181@ip-10-62-103-46.mail>
Subject: [dungeonpilot] Server Crashed
Mime-Version: 1.0
Content-Type: multipart/mixed;
 boundary="--==_mimepart_5114d2f18f621_7028125080411632";
 charset=UTF-8
Content-Transfer-Encoding: 7bit



----==_mimepart_5114d2f18f621_7028125080411632
Date: Fri, 08 Feb 2013 10:26:57 +0000
Mime-Version: 1.0
Content-Type: text/plain;
 charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename=foo.txt
filename: foo.txt
Content-ID: <5114d2f0ee34b_7028125080411545@ip-10-62-103-46.mail>

Hallo

----==_mimepart_5114d2f18f621_7028125080411632
Date: Fri, 08 Feb 2013 10:26:57 +0000
Mime-Version: 1.0
Content-Type: text/html;
 charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-ID: <5114d2f19ce45_7028125080411785@ip-10-62-103-46.mail>



----==_mimepart_5114d2f18f621_7028125080411632--

ActionMailerのバグのように見えますか?

4

4 に答える 4

1

電子メールのテキスト本文と電子メールのHTML本文がnullの場合、このエラーが発生しました。したがって、Amazon Simple Email SendRawEmailAsyncメソッドを使用してEメールを送信する場合、そのうちの1つに値が必要です。

于 2020-09-09T22:13:22.823 に答える
0

私のせいで、テンプレートにテキスト拡張子ではなくtxt拡張子を付けました。

この場合、actionmailerの次のバージョンは例外をスローします。

于 2013-03-01T10:24:15.313 に答える
0

私も同様の問題に直面しました。私にとって、アタッチメントは適切にアタッチされていました。私にとってうまくいった解決策は、ビュー(server_crashed.html.erb)を作成することでした。この後、レーキタスクを実行すると、正常に動作し、メーラーを送信できました。

于 2015-07-02T08:53:45.273 に答える
0

私の場合、電子メールの本文に空のマルチパートを追加するのと同じ問題に直面しました。

于 2020-06-02T20:09:06.253 に答える