0

AWS Simple Email Serviceを介して添付ファイルを送信しようとしていますが、添付ファイルなしで生のメールを送信できますが、添付ファイルを使用して送信しようとすると常に失敗します。MIMEメッセージを正しく作成しましたか?

さて、これが正しく送信するMIMEです。

From: test@example.com
To: test@example.com
Subject: Test Email
Content-Type: multipart/mixed;
  boundary="_003_97DCB304C5294779BEBCFC8357FCC4D2"
MIME-Version: 1.0

--_003_97DCB304C5294779BEBCFC8357FCC4D2
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hello, This is a test email.

添付ファイルを添付すると送信に失敗します:

From: test@example.com
To: test@example.com
Subject: Test Email
Content-Type: multipart/mixed;
  boundary="_003_97DCB304C5294779BEBCFC8357FCC4D2"
MIME-Version: 1.0

--_003_97DCB304C5294779BEBCFC8357FCC4D2
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hello, This is a test email.

--_003_97DCB304C5294779BEBCFC8357FCC4D2
Content-Type: text/txt; name="test.txt"
Content-Description: test.txt
Content-Disposition: attachment; filename="test.txt";
Content-Transfer-Encoding: base64

VGhpcyBpcyBhIHRlc3QgYXR0YWNobWVudC4=

--_003_97DCB304C5294779BEBCFC8357FCC4D2

明らかに間違っていることはありますか?

メッセージ全体をbase64エンコードし、このURLの最後に追加することで呼び出しを構成します。

Action=SendRawEmail&Destinations.member.1=test%40example.com&RawMessage.Data={base64 encoded MIME Message}

答え:

MIMEファイルには2つの問題がありました。初め

  • 末尾の境界は、MIMEメッセージの別の側面、たとえば別の添付ファイルを明らかに探しているため、そこにあるべきではありません。

  • 「text/txt」として定義されているContent-Typeは、実際には「text/plain」である必要があります

したがって、これら2つの変更を行うと、次のように機能するMIMEメッセージが得られます。

From: test@example.com
To: test@example.com
Subject: Test Email
Content-Type: multipart/mixed;
  boundary="_003_97DCB304C5294779BEBCFC8357FCC4D2"
MIME-Version: 1.0

--_003_97DCB304C5294779BEBCFC8357FCC4D2
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hello, This is a test email.

--_003_97DCB304C5294779BEBCFC8357FCC4D2
Content-Type: text/plain; name="test.txt"
Content-Description: test.txt
Content-Disposition: attachment; filename="test.txt";
Content-Transfer-Encoding: base64

VGhpcyBpcyBhIHRlc3QgYXR0YWNobWVudC4=
4

1 に答える 1

0

MIMEファイルには2つの問題がありました。初め

  • 末尾の境界は、MIMEメッセージの別の側面、たとえば別の添付ファイルを明らかに探しているため、そこにあるべきではありません。

  • 「text/txt」として定義されているContent-Typeは、実際には「text/plain」である必要があります

したがって、これら2つの変更を行うと、次のように機能するMIMEメッセージが得られます。

From: test@example.com
To: test@example.com
Subject: Test Email
Content-Type: multipart/mixed;
  boundary="_003_97DCB304C5294779BEBCFC8357FCC4D2"
MIME-Version: 1.0

--_003_97DCB304C5294779BEBCFC8357FCC4D2
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Hello, This is a test email.

--_003_97DCB304C5294779BEBCFC8357FCC4D2
Content-Type: text/plain; name="test.txt"
Content-Description: test.txt
Content-Disposition: attachment; filename="test.txt";
Content-Transfer-Encoding: base64

VGhpcyBpcyBhIHRlc3QgYXR0YWNobWVudC4=
于 2012-03-30T10:28:21.797 に答える