Mengirim email melalui Amazon SES menggunakan AWS SDK - Layanan Email Sederhana Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengirim email melalui Amazon SES menggunakan AWS SDK

Anda dapat menggunakan AWS SDK untuk mengirim email melalui Amazon SES. AWS SDK tersedia untuk beberapa bahasa pemrograman. Untuk informasi lebih lanjut, lihat Alat untuk Amazon Web Services.

Prasyarat

Prasyarat berikut harus diselesaikan untuk menyelesaikan salah satu contoh kode di bagian berikutnya:

  • Jika Anda belum melakukannya, selesaikan tugas di Menyiapkan Amazon Simple Email Service.

  • Verifikasi alamat email Anda dengan Amazon SES—Sebelum Anda dapat mengirim email dengan Amazon SES, Anda harus memverifikasi bahwa Anda memiliki alamat email pengirim. Jika akun Anda masih di sandbox Amazon SES, Anda juga harus memverifikasi alamat email penerima. Sebaiknya gunakan konsol Amazon SES untuk memverifikasi alamat email. Untuk informasi selengkapnya, lihat Membuat identitas alamat email.

  • Dapatkan AWS kredensyal Anda —Anda memerlukan ID kunci AWS akses dan kunci akses AWS rahasia untuk mengakses Amazon SES menggunakan SDK. Anda dapat menemukan kredensial Anda dengan menggunakan halaman Kredensial Keamanan di AWS Management Console. Untuk informasi selengkapnya tentang kredensial, lihat Tipe kredensial Amazon SES.

  • Buat file kredensial bersama—Agar kode sampel di bagian ini berfungsi dengan baik, Anda harus membuat file kredensial bersama. Untuk informasi lebih lanjut, lihat Membuat file kredensi bersama untuk digunakan saat mengirim email melalui Amazon SES menggunakan SDK AWS.

Contoh kode

penting

Dalam tutorial berikut, Anda mengirim email ke diri Anda sendiri sehingga Anda dapat memeriksa apakah Anda sudah menerimanya. Untuk eksperimen atau pengujian beban lebih lanjut, gunakan simulator kotak surat Amazon SES. Email yang Anda kirim ke simulator kotak surat tidak dihitung terhadap kuota pengiriman atau kecepatan pentalan dan aduan Anda. Untuk informasi lebih lanjut, lihat Menggunakan simulator kotak surat secara manual menggunakan simulator kotak surat secara manual.

Pilih bahasa pemrograman untuk melihat contoh untuk bahasa tersebut:
    .NET

    Prosedur berikut menunjukkan cara mengirim email melalui Amazon SES menggunakan Visual Studio dan AWS SDK for .NET.

    Solusi ini diuji dengan menggunakan komponen berikut:

    • Microsoft Visual Studio Community 2017, versi 15.4.0.

    • Microsoft .NET Framework versi 4.6.1.

    • AWSSDKPaket.Core (versi 3.3.19), diinstal menggunakan. NuGet

    • Itu AWSSDK. SimpleEmail paket (versi 3.3.6.1), diinstal menggunakan. NuGet

    Sebelum Anda memulai, lakukan tugas berikut:
    Untuk mengirim email menggunakan AWS SDK for .NET
    1. Buat proyek baru dengan melakukan langkah-langkah berikut:

      1. Mulai Visual Studio.

      2. Di menu File, pilih Baru, Proyek.

      3. Di jendela Proyek Baru, di panel sebelah kiri, perluas Terinstal, lalu perluas Visual C#.

      4. Di panel sebelah kanan, pilih Aplikasi Konsol (.NET Framework).

      5. Untuk Nama, ketik AmazonSESSample, lalu pilih OK.

    2. Gunakan NuGet untuk menyertakan paket Amazon SES dalam solusi Anda dengan menyelesaikan langkah-langkah berikut:

      1. Di panel Solution Explorer, klik kanan project Anda, lalu pilih Manage NuGet Packages.

      2. Pada tab NuGet: AmazonsesSample, pilih Browse.

      3. Di kotak pencarian, ketik AWSSDK.SimpleEmail.

      4. Pilih AWSSDK. SimpleEmailpaket, dan kemudian pilih Install.

      5. Di jendela Pratinjau Perubahan, pilih OK.

    3. Di tab Program.cs, tempel kode berikut:

      using Amazon; using System; using System.Collections.Generic; using Amazon.SimpleEmail; using Amazon.SimpleEmail.Model; namespace AmazonSESSample { class Program { // Replace sender@example.com with your "From" address. // This address must be verified with Amazon SES. static readonly string senderAddress = "sender@example.com"; // Replace recipient@example.com with a "To" address. If your account // is still in the sandbox, this address must be verified. static readonly string receiverAddress = "recipient@example.com"; // The configuration set to use for this email. If you do not want to use a // configuration set, comment out the following property and the // ConfigurationSetName = configSet argument below. static readonly string configSet = "ConfigSet"; // The subject line for the email. static readonly string subject = "Amazon SES test (AWS SDK for .NET)"; // The email body for recipients with non-HTML email clients. static readonly string textBody = "Amazon SES Test (.NET)\r\n" + "This email was sent through Amazon SES " + "using the AWS SDK for .NET."; // The HTML body of the email. static readonly string htmlBody = @"<html> <head></head> <body> <h1>Amazon SES Test (AWS SDK for .NET)</h1> <p>This email was sent with <a href='https://aws.amazon.com/ses/'>Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-net/'> AWS SDK for .NET</a>.</p> </body> </html>"; static void Main(string[] args) { // Replace USWest2 with the AWS Region you're using for Amazon SES. // Acceptable values are EUWest1, USEast1, and USWest2. using (var client = new AmazonSimpleEmailServiceClient(RegionEndpoint.USWest2)) { var sendRequest = new SendEmailRequest { Source = senderAddress, Destination = new Destination { ToAddresses = new List<string> { receiverAddress } }, Message = new Message { Subject = new Content(subject), Body = new Body { Html = new Content { Charset = "UTF-8", Data = htmlBody }, Text = new Content { Charset = "UTF-8", Data = textBody } } }, // If you are not using a configuration set, comment // or remove the following line ConfigurationSetName = configSet }; try { Console.WriteLine("Sending email using Amazon SES..."); var response = client.SendEmail(sendRequest); Console.WriteLine("The email was sent successfully."); } catch (Exception ex) { Console.WriteLine("The email was not sent."); Console.WriteLine("Error message: " + ex.Message); } } Console.Write("Press any key to continue..."); Console.ReadKey(); } } }
    4. Di editor kode, lakukan hal berikut:

      • Ganti pengirim@contoh.com dengan alamat email "Dari:" Anda. Alamat ini harus diverifikasi. Untuk informasi lebih lanjut, lihat Identitas terverifikasi di Amazon SES.

      • Ganti penerima@contoh.com dengan alamat "Kepada:". Jika akun Anda masih berada di sandbox, alamat ini juga harus diverifikasi.

      • Ganti ConfigSetdengan nama konfigurasi yang akan digunakan saat mengirim email ini.

      • Ganti USWest2 dengan nama Wilayah AWS titik akhir yang Anda gunakan untuk mengirim email menggunakan Amazon SES. Untuk daftar wilayah tempat Amazon SES tersedia, lihat Layanan Email Sederhana Amazon (Amazon SES) di Referensi Umum AWS.

      Setelah selesai, simpan Program.cs.

    5. Bangun dan jalankan aplikasi dengan menyelesaikan langkah berikut:

      1. Di menu Bangun, pilih Bangun Solusi.

      2. Di menu Debug, pilih Mulai Debugging. Jendela konsol muncul.

    6. Tinjau output dari konsol tersebut. Jika email berhasil dikirim, konsol tersebut akan menampilkan "The email was sent successfully."

    7. Jika email berhasil dikirim, masuk ke klien email alamat penerima. Anda akan menemukan pesan yang Anda kirim.

    Java

    Prosedur berikut menunjukkan cara menggunakan Eclipse IDE untuk Pengembang Java EE dan AWS Toolkit for Eclipseuntuk membuat proyek AWS SDK dan memodifikasi kode Java untuk mengirim email melalui Amazon SES.

    Sebelum Anda memulai, lakukan tugas berikut:
    Untuk mengirim email menggunakan AWS SDK for Java
    1. Buat Proyek AWS Java di Eclipse dengan melakukan langkah-langkah berikut:

      1. Mulai Eclipse.

      2. Di menu File, pilih Baru, lalu pilih Lainnya. Di jendela Baru, perluas folder AWS, lalu pilih Java Project AWS ..

      3. Di kotak dialog New AWS Java Project, lakukan hal berikut:

        1. Untuk Nama proyek, ketik nama proyek.

        2. Di bawah AWS SDK for Java Sampel, pilih JavaMail Sampel Layanan Email Sederhana Amazon.

        3. Pilih Selesai.

    2. Di Eclipse, di panel Penjelajah Paket, perluas proyek Anda.

    3. Di bawah proyek Anda, perluas folder src/main/java, perluas folder com.amazon.aws.samples, lalu klik dua kali AmazonSESSample.java.

    4. Ganti seluruh konten AmazonSESSample.java dengan kode berikut:

      package com.amazonaws.samples; import java.io.IOException; import com.amazonaws.regions.Regions; import com.amazonaws.services.simpleemail.AmazonSimpleEmailService; import com.amazonaws.services.simpleemail.AmazonSimpleEmailServiceClientBuilder; import com.amazonaws.services.simpleemail.model.Body; import com.amazonaws.services.simpleemail.model.Content; import com.amazonaws.services.simpleemail.model.Destination; import com.amazonaws.services.simpleemail.model.Message; import com.amazonaws.services.simpleemail.model.SendEmailRequest; public class AmazonSESSample { // Replace sender@example.com with your "From" address. // This address must be verified with Amazon SES. static final String FROM = "sender@example.com"; // Replace recipient@example.com with a "To" address. If your account // is still in the sandbox, this address must be verified. static final String TO = "recipient@example.com"; // The configuration set to use for this email. If you do not want to use a // configuration set, comment the following variable and the // .withConfigurationSetName(CONFIGSET); argument below. static final String CONFIGSET = "ConfigSet"; // The subject line for the email. static final String SUBJECT = "Amazon SES test (AWS SDK for Java)"; // The HTML body for the email. static final String HTMLBODY = "<h1>Amazon SES test (AWS SDK for Java)</h1>" + "<p>This email was sent with <a href='https://aws.amazon.com/ses/'>" + "Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-java/'>" + "AWS SDK for Java</a>"; // The email body for recipients with non-HTML email clients. static final String TEXTBODY = "This email was sent through Amazon SES " + "using the AWS SDK for Java."; public static void main(String[] args) throws IOException { try { AmazonSimpleEmailService client = AmazonSimpleEmailServiceClientBuilder.standard() // Replace US_WEST_2 with the AWS Region you're using for // Amazon SES. .withRegion(Regions.US_WEST_2).build(); SendEmailRequest request = new SendEmailRequest() .withDestination( new Destination().withToAddresses(TO)) .withMessage(new Message() .withBody(new Body() .withHtml(new Content() .withCharset("UTF-8").withData(HTMLBODY)) .withText(new Content() .withCharset("UTF-8").withData(TEXTBODY))) .withSubject(new Content() .withCharset("UTF-8").withData(SUBJECT))) .withSource(FROM) // Comment or remove the next line if you are not using a // configuration set .withConfigurationSetName(CONFIGSET); client.sendEmail(request); System.out.println("Email sent!"); } catch (Exception ex) { System.out.println("The email was not sent. Error message: " + ex.getMessage()); } } }
    5. Di AmazonSESSample.java, ganti berikut dengan nilai-nilai Anda sendiri:

      penting

      Alamat email peka huruf besar kecil. Pastikan alamatnya sama persis dengan alamat yang Anda verifikasi.

      • SENDER@EXAMPLE.COM—Ganti dengan alamat email "Dari" Anda. Alamat ini harus diverifikasi sebelum Anda menjalankan program ini. Untuk informasi lebih lanjut, lihat Identitas terverifikasi di Amazon SES.

      • RECIPIENT@EXAMPLE.COM—Ganti dengan alamat email "Kepada" Anda. Jika akun Anda masih berada di sandbox, Anda harus memverifikasi alamat ini sebelum menggunakannya. Untuk informasi lebih lanjut, lihat Minta akses produksi (Pindah dari kotak pasir Amazon SES).

      • (Opsional)us-west-2—Jika Anda ingin menggunakan Amazon SES di Wilayah selain US West (Oregon), ganti ini dengan Wilayah yang ingin Anda gunakan. Untuk daftar Wilayah tempat Amazon SES tersedia, lihat Layanan Email Sederhana Amazon (Amazon SES) di Referensi Umum AWS.

    6. Simpan AmazonSESSample.java.

    7. Untuk membangun proyek, pilih Proyek lalu pilih Bangun Proyek.

      catatan

      Jika opsi ini dinonaktifkan, pembangunan otomatis dapat diaktifkan; jika demikian, lewati langkah ini.

    8. Untuk memulai program dan mengirim email, pilih Jalankan lalu pilih Jalankan lagi.

    9. Tinjau output dari panel konsol tersebut di Eclipse. Jika email berhasil dikirim, konsol tersebut akan menampilkan "Email sent!", Jika tidak, pesan kesalahan akan ditampilkan.

    10. Jika email berhasil dikirim, masuk ke klien email alamat penerima. Anda akan menemukan pesan yang Anda kirim.

    PHP

    Topik ini menunjukkan cara menggunakan AWS SDK for PHP untuk mengirim email melalui Amazon SES.

    Sebelum Anda memulai, lakukan tugas berikut:
    • Instal PHP—PHP tersedia di http://php.net/downloads.php. Tutorial ini membutuhkan PHP versi 5.5 atau lebih tinggi. Setelah Anda memasang PHP, tambahkan jalur ke PHP di variabel lingkungan Anda, sehingga Anda dapat menjalankan PHP dari prompt perintah. Kode dalam tutorial ini diuji menggunakan PHP 7.2.7.

    • Instal AWS SDK for PHP versi 3 —Untuk petunjuk unduhan dan penginstalan, lihat AWS SDK for PHP dokumentasi. Kode di tutorial ini diuji menggunakan SDK versi 3.64.13.

    Untuk mengirim email melalui Amazon SES menggunakan AWS SDK for PHP
    1. Di editor teks, buat file bernama amazon-ses-sample.php. Tempel kode berikut:

      <?php // If necessary, modify the path in the require statement below to refer to the // location of your Composer autoload.php file. require 'vendor/autoload.php'; use Aws\Ses\SesClient; use Aws\Exception\AwsException; // Create an SesClient. Change the value of the region parameter if you're // using an AWS Region other than US West (Oregon). Change the value of the // profile parameter if you want to use a profile in your credentials file // other than the default. $SesClient = new SesClient([ 'profile' => 'default', 'version' => '2010-12-01', 'region' => 'us-west-2' ]); // Replace sender@example.com with your "From" address. // This address must be verified with Amazon SES. $sender_email = 'sender@example.com'; // Replace these sample addresses with the addresses of your recipients. If // your account is still in the sandbox, these addresses must be verified. $recipient_emails = ['recipient1@example.com','recipient2@example.com']; // Specify a configuration set. If you do not want to use a configuration // set, comment the following variable, and the // 'ConfigurationSetName' => $configuration_set argument below. $configuration_set = 'ConfigSet'; $subject = 'Amazon SES test (AWS SDK for PHP)'; $plaintext_body = 'This email was sent with Amazon SES using the AWS SDK for PHP.' ; $html_body = '<h1>AWS Amazon Simple Email Service Test Email</h1>'. '<p>This email was sent with <a href="https://aws.amazon.com/ses/">'. 'Amazon SES</a> using the <a href="https://aws.amazon.com/sdk-for-php/">'. 'AWS SDK for PHP</a>.</p>'; $char_set = 'UTF-8'; try { $result = $SesClient->sendEmail([ 'Destination' => [ 'ToAddresses' => $recipient_emails, ], 'ReplyToAddresses' => [$sender_email], 'Source' => $sender_email, 'Message' => [ 'Body' => [ 'Html' => [ 'Charset' => $char_set, 'Data' => $html_body, ], 'Text' => [ 'Charset' => $char_set, 'Data' => $plaintext_body, ], ], 'Subject' => [ 'Charset' => $char_set, 'Data' => $subject, ], ], // If you aren't using a configuration set, comment or delete the // following line 'ConfigurationSetName' => $configuration_set, ]); $messageId = $result['MessageId']; echo("Email sent! Message ID: $messageId"."\n"); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo("The email was not sent. Error message: ".$e->getAwsErrorMessage()."\n"); echo "\n"; }
    2. Di amazon-ses-sample.php, ganti berikut dengan nilai-nilai Anda sendiri:

      • path_to_sdk_inclusion—Ganti dengan jalur yang diperlukan untuk memasukkan AWS SDK for PHP dalam program. Untuk informasi lebih lanjut, lihat dokumentasi AWS SDK for PHP.

      • sender@example.com—Ganti dengan alamat email yang telah Anda verifikasi dengan Amazon SES. Untuk informasi lebih lanjut, lihat Identitas terverifikasi. Alamat email di Amazon SES peka huruf besar kecil. Pastikan alamat yang Anda masukkan sama persis dengan alamat yang Anda verifikasi.

      • recipient1@example.com,recipient2@example.com—Ganti dengan alamat penerima Anda. Jika akun Anda masih berada di sandbox, alamat penerima Anda juga harus diverifikasi. Untuk informasi lebih lanjut, lihat Minta akses produksi (Pindah dari kotak pasir Amazon SES). Pastikan alamat yang Anda masukkan sama persis dengan alamat yang Anda verifikasi.

      • ConfigSet (Opsional)—Jika Anda ingin menggunakan set konfigurasi saat mengirim email ini, ganti nilai dengan nama set konfigurasi. Untuk informasi selengkapnya tentang set konfigurasi, lihat Mengelola set konfigurasi di Amazon SES.

      • (Opsional)us-west-2—Jika Anda ingin menggunakan Amazon SES di Wilayah selain US West (Oregon), ganti ini dengan Wilayah yang ingin Anda gunakan. Untuk daftar Wilayah tempat Amazon SES tersedia, lihat Layanan Email Sederhana Amazon (Amazon SES) di Referensi Umum AWS.

    3. Simpan amazon-ses-sample.php.

    4. Untuk menjalankan program, buka prompt perintah di direktori yang sama seperti amazon-ses-sample.php, lalu ketik perintah berikut:

      $ php amazon-ses-sample.php
    5. Tinjau output. Jika email berhasil dikirim, konsol tersebut akan menampilkan "Email sent!", Jika tidak, pesan kesalahan akan ditampilkan.

      catatan

      Jika Anda mengalami kesalahan "cURL error 60: masalah Sertifikat SSL" ketika Anda menjalankan program, unduh paket CA terbaru seperti yang dijelaskan di dokumentasi AWS SDK for PHP. Kemudian, di amazon-ses-sample.php, tambahkan baris berikut ini ke array SesClient::factory, ganti path_of_certs dengan jalur ke paket CA yang Anda unduh, lalu kembali jalankan program.

      'http' => [ 'verify' => 'path_of_certs\ca-bundle.crt' ]
    6. Masuk ke klien email alamat penerima. Anda akan menemukan pesan yang Anda kirim.

    Ruby

    Topik ini menunjukkan cara menggunakan AWS SDK for Ruby untuk mengirim email melalui Amazon SES.

    Sebelum Anda memulai, lakukan tugas berikut:
    Untuk mengirim email melalui Amazon SES menggunakan AWS SDK for Ruby
    1. Di editor teks, buat file bernama amazon-ses-sample.rb. Tempel kode berikut ke file:

      require 'aws-sdk' # Replace sender@example.com with your "From" address. # This address must be verified with Amazon SES. sender = "sender@example.com" # Replace recipient@example.com with a "To" address. If your account # is still in the sandbox, this address must be verified. recipient = "recipient@example.com" # Specify a configuration set. If you do not want to use a configuration # set, comment the following variable and the # configuration_set_name: configsetname argument below. configsetname = "ConfigSet" # Replace us-west-2 with the AWS Region you're using for Amazon SES. awsregion = "us-west-2" # The subject line for the email. subject = "Amazon SES test (AWS SDK for Ruby)" # The HTML body of the email. htmlbody = '<h1>Amazon SES test (AWS SDK for Ruby)</h1>'\ '<p>This email was sent with <a href="https://aws.amazon.com/ses/">'\ 'Amazon SES</a> using the <a href="https://aws.amazon.com/sdk-for-ruby/">'\ 'AWS SDK for Ruby</a>.' # The email body for recipients with non-HTML email clients. textbody = "This email was sent with Amazon SES using the AWS SDK for Ruby." # Specify the text encoding scheme. encoding = "UTF-8" # Create a new SES resource and specify a region ses = Aws::SES::Client.new(region: awsregion) # Try to send the email. begin # Provide the contents of the email. resp = ses.send_email({ destination: { to_addresses: [ recipient, ], }, message: { body: { html: { charset: encoding, data: htmlbody, }, text: { charset: encoding, data: textbody, }, }, subject: { charset: encoding, data: subject, }, }, source: sender, # Comment or remove the following line if you are not using # a configuration set configuration_set_name: configsetname, }) puts "Email sent!" # If something goes wrong, display an error message. rescue Aws::SES::Errors::ServiceError => error puts "Email not sent. Error message: #{error}" end
    2. Di amazon-ses-sample.rb, ganti berikut dengan nilai-nilai Anda sendiri:

      • sender@example.com—Ganti dengan alamat email yang telah Anda verifikasi dengan Amazon SES. Untuk informasi lebih lanjut, lihat Identitas terverifikasi. Alamat email di Amazon SES peka huruf besar kecil. Pastikan alamat yang Anda masukkan sama persis dengan alamat yang Anda verifikasi.

      • recipient@example.com—Ganti dengan alamat penerima. Jika akun Anda masih berada di sandbox, Anda harus memverifikasi alamat ini sebelum menggunakannya. Untuk informasi lebih lanjut, lihat Minta akses produksi (Pindah dari kotak pasir Amazon SES). Pastikan alamat yang Anda masukkan sama persis dengan alamat yang Anda verifikasi.

      • (Opsional)us-west-2—Jika Anda ingin menggunakan Amazon SES di Wilayah selain US West (Oregon), ganti ini dengan Wilayah yang ingin Anda gunakan. Untuk daftar Wilayah tempat Amazon SES tersedia, lihat Layanan Email Sederhana Amazon (Amazon SES) di Referensi Umum AWS.

    3. Simpan amazon-ses-sample.rb.

    4. Untuk menjalankan program, buka prompt perintah di direktori yang sama seperti amazon-ses-sample.rb, dan ketik ruby amazon-ses-sample.rb

    5. Tinjau output. Jika email berhasil dikirim, konsol tersebut akan menampilkan "Email sent!", Jika tidak, pesan kesalahan akan ditampilkan.

    6. Masuk ke klien email alamat penerima. Anda akan menemukan pesan yang Anda kirim.

    Python

    Topik ini menunjukkan cara menggunakan AWS SDK for Python (Boto) untuk mengirim email melalui Amazon SES.

    Sebelum Anda memulai, lakukan tugas berikut:
    • Verifikasi alamat email Anda dengan Amazon SES—Sebelum Anda dapat mengirim email dengan Amazon SES, Anda harus memverifikasi bahwa Anda memiliki alamat email pengirim. Jika akun Anda masih di sandbox Amazon SES, Anda juga harus memverifikasi alamat email penerima. Sebaiknya gunakan konsol Amazon SES untuk memverifikasi alamat email. Untuk informasi selengkapnya, lihat Membuat identitas alamat email.

    • Dapatkan AWS kredensyal Anda —Anda memerlukan ID kunci AWS akses dan kunci akses AWS rahasia untuk mengakses Amazon SES menggunakan SDK. Anda dapat menemukan kredensial Anda dengan menggunakan halaman AWS Management ConsoleKredensial Keamanan. Untuk informasi selengkapnya tentang kredensial, lihat Tipe kredensial Amazon SES.

    • Instal Python—Python tersedia di https://www.python.org/downloads/. Kode di tutorial ini diuji menggunakan Python 2.7.6 dan Python 3.6.1. Setelah Anda menginstal Phyton, tambahkan jalur ke Phyton di variabel lingkungan Anda, sehingga Anda dapat menjalankan Phyton dari prompt perintah.

    • Instal AWS SDK for Python (Boto) —Untuk petunjuk unduhan dan penginstalan, lihat AWS SDK for Python (Boto) dokumentasi. Kode sampel di tutorial ini diuji menggunakan SDK for Python versi 1.4.4.

    Untuk mengirim email melalui Amazon SES menggunakan SDK for Python
    1. Di editor teks, buat file bernama amazon-ses-sample.py. Tempel kode berikut ke file:

      import boto3 from botocore.exceptions import ClientError # Replace sender@example.com with your "From" address. # This address must be verified with Amazon SES. SENDER = "Sender Name <sender@example.com>" # Replace recipient@example.com with a "To" address. If your account # is still in the sandbox, this address must be verified. RECIPIENT = "recipient@example.com" # Specify a configuration set. If you do not want to use a configuration # set, comment the following variable, and the # ConfigurationSetName=CONFIGURATION_SET argument below. CONFIGURATION_SET = "ConfigSet" # If necessary, replace us-west-2 with the AWS Region you're using for Amazon SES. AWS_REGION = "us-west-2" # The subject line for the email. SUBJECT = "Amazon SES Test (SDK for Python)" # The email body for recipients with non-HTML email clients. BODY_TEXT = ("Amazon SES Test (Python)\r\n" "This email was sent with Amazon SES using the " "AWS SDK for Python (Boto)." ) # The HTML body of the email. BODY_HTML = """<html> <head></head> <body> <h1>Amazon SES Test (SDK for Python)</h1> <p>This email was sent with <a href='https://aws.amazon.com/ses/'>Amazon SES</a> using the <a href='https://aws.amazon.com/sdk-for-python/'> AWS SDK for Python (Boto)</a>.</p> </body> </html> """ # The character encoding for the email. CHARSET = "UTF-8" # Create a new SES resource and specify a region. client = boto3.client('ses',region_name=AWS_REGION) # Try to send the email. try: #Provide the contents of the email. response = client.send_email( Destination={ 'ToAddresses': [ RECIPIENT, ], }, Message={ 'Body': { 'Html': { 'Charset': CHARSET, 'Data': BODY_HTML, }, 'Text': { 'Charset': CHARSET, 'Data': BODY_TEXT, }, }, 'Subject': { 'Charset': CHARSET, 'Data': SUBJECT, }, }, Source=SENDER, # If you are not using a configuration set, comment or delete the # following line ConfigurationSetName=CONFIGURATION_SET, ) # Display an error if something goes wrong. except ClientError as e: print(e.response['Error']['Message']) else: print("Email sent! Message ID:"), print(response['MessageId'])
    2. Di amazon-ses-sample.py, ganti berikut dengan nilai-nilai Anda sendiri:

      • sender@example.com—Ganti dengan alamat email yang telah Anda verifikasi dengan Amazon SES. Untuk informasi lebih lanjut, lihat Identitas terverifikasi. Alamat email di Amazon SES peka huruf besar kecil. Pastikan alamat yang Anda masukkan sama persis dengan alamat yang Anda verifikasi.

      • recipient@example.com—Ganti dengan alamat penerima. Jika akun Anda masih berada di sandbox, Anda harus memverifikasi alamat ini sebelum menggunakannya. Untuk informasi lebih lanjut, lihat Minta akses produksi (Pindah dari kotak pasir Amazon SES). Pastikan alamat yang Anda masukkan sama persis dengan alamat yang Anda verifikasi.

      • (Opsional)us-west-2—Jika Anda ingin menggunakan Amazon SES di Wilayah selain US West (Oregon), ganti ini dengan Wilayah yang ingin Anda gunakan. Untuk daftar Wilayah tempat Amazon SES tersedia, lihat Layanan Email Sederhana Amazon (Amazon SES) di Referensi Umum AWS.

    3. Simpan amazon-ses-sample.py.

    4. Untuk menjalankan program, buka prompt perintah di direktori yang sama seperti amazon-ses-sample.py, lalu ketik python amazon-ses-sample.py.

    5. Tinjau output. Jika email berhasil dikirim, konsol tersebut akan menampilkan "Email sent!", Jika tidak, pesan kesalahan akan ditampilkan.

    6. Masuk ke klien email alamat penerima. Anda akan menemukan pesan yang Anda kirim.