AWS SDK または CLI SendRawEmailで使用する - AWS SDKコードの例

Doc AWS SDK ExamplesWord リポジトリには、さらに多くの GitHub の例があります。 AWS SDK

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS SDK または CLI SendRawEmailで使用する

以下のコード例は、SendRawEmail の使用方法を示しています。

CLI
AWS CLI

Amazon SES を使用して未加工の E メールを送信するには

次の例では、 send-raw-email コマンドを使用して TXT 添付ファイルを含む E メールを送信します。

aws ses send-raw-email --raw-message file://message.json

出力:

{ "MessageId": "EXAMPLEf3f73d99b-c63fb06f-d263-41f8-a0fb-d0dc67d56c07-000000" }

raw メッセージは、現在のディレクトリにある という名前のファイルに保存された JSON データ構造message.jsonです。以下の要素が含まれます。

{ "Data": "From: sender@example.com\nTo: recipient@example.com\nSubject: Test email sent using the AWS CLI (contains an attachment)\nMIME-Version: 1.0\nContent-type: Multipart/Mixed; boundary=\"NextPart\"\n\n--NextPart\nContent-Type: text/plain\n\nThis is the message body.\n\n--NextPart\nContent-Type: text/plain;\nContent-Disposition: attachment; filename=\"attachment.txt\"\n\nThis is the text in the attachment.\n\n--NextPart--" }

ご覧のように、「Data」は、Attachment.txt と呼ばれる添付ファイルを含む、MIME 形式の未加工の E メールコンテンツ全体を含む 1 つの長い文字列です。

sender@example.com と recipient@example.com は、使用するアドレスに置き換えてください。送信者の E メールアドレスは Amazon SES で検証する必要があることに注意してください。Amazon SES への本番稼働アクセスが許可されるまで、受信者が Amazon SES メールボックスシミュレーターでない限り、受信者の E メールアドレスも確認する必要があります。検証の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES での E メールアドレスとドメインの検証」を参照してください。

出力のメッセージ ID は、 send-raw-email への呼び出しが成功したことを示します。

E メールが届かない場合は、迷惑メールフォルダを確認してください。

未加工の E メールの送信の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES API を使用した未加工の E メールの送信」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のSendRawEmail」を参照してください。

JavaScript
SDK(v3) の JavaScript
注記

GitHub には他にもあります。用例一覧を検索し、AWS コード例リポジトリでの設定と実行の方法を確認してください。

nodemailer を使用して、添付ファイル付きの E メールを送信します。

import sesClientModule from "@aws-sdk/client-ses"; /** * nodemailer wraps the SES SDK and calls SendRawEmail. Use this for more advanced * functionality like adding attachments to your email. * * https://nodemailer.com/transports/ses/ */ import nodemailer from "nodemailer"; /** * @param {string} from An Amazon SES verified email address. * @param {*} to An Amazon SES verified email address. */ export const sendEmailWithAttachments = ( from = "from@example.com", to = "to@example.com", ) => { const ses = new sesClientModule.SESClient({}); const transporter = nodemailer.createTransport({ SES: { ses, aws: sesClientModule }, }); return new Promise((resolve, reject) => { transporter.sendMail( { from, to, subject: "Hello World", text: "Greetings from Amazon SES!", attachments: [{ content: "Hello World!", filename: "hello.txt" }], }, (err, info) => { if (err) { reject(err); } else { resolve(info); } }, ); }); };
  • API の詳細については、SendRawEmail AWS SDK for JavaScript リファレンスの API を参照してください。