我們宣布
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 Amazon SES 中使用 IP 位址篩選器進行電子郵件收據
這個 Node.js 程式碼範例會說明:
建立 IP 地址篩選條件以接受或拒絕來自一個 IP 地址或一個 IP 地址範圍的郵件。
列出您的現有 IP 地址篩選條件。
刪除 IP 地址篩選條件。
在 Amazon SES 中,篩選器是一種資料結構,其中包含名稱、IP 位址範圍,以及是否允許或封鎖來自該篩選器的郵件。您想要封鎖或允許的單一 IP 地址或一組 IP 地址範圍,是以無類別網域間路由選擇 (CIDR) 表示法來指定。如需 Amazon SES 如何接收電子郵件的詳細資訊,請參閱 Amazon SES 電子郵件接收概念 (位於 Amazon 簡單電子郵件服務開發人員指南
使用案例
在此範例中會使用一系列的 Node.js 模組,以多種不同方式傳送電子郵件。Node.js 模組使用 SDK JavaScript 來建立和使用用AWS.SES
戶端類別的下列方法的電子郵件範本:
先決條件任務
若要設定和執行此範例,您必須先完成這些任務:
安裝 Node.js。如需安裝 Node.js 的詳細資訊,請參閱 Node.js 網站
。 透過使用者登入資料建立共用組態檔。如需提供共用登入資料檔案的詳細資訊,請參閱 從共用登入資料檔案中在 Node.js 中載入登入資料。
設定軟體開發套件
JavaScript 通過創建全局配置對象,然後為代碼設置區域來配置 SDK。在此範例中,區域會設為 us-west-2
。
// Load the SDK for JavaScript var AWS = require('aws-sdk'); // Set the Region AWS.config.update({region: 'us-west-2'});
建立 IP 地址篩選條件
在此範例中,使用 Node.js 模組以搭配 Amazon SES 傳送電子郵件。以檔名 ses_createreceiptfilter.js
建立一個 Node.js 模組。依前述內容設定軟體開發套件。
建立一個物件以傳遞定義 IP 篩選條件的參數值,包括篩選條件名稱、一個 IP 地址或要篩選的地址範圍,以及是否從篩選的地址允許或封鎖電子郵件流量。若要呼叫 createReceiptFilter
方法,請建立叫用 Amazon SES 服務物件的 promise 來傳遞參數。然後,在 promise 回呼中處理 response
。
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create createReceiptFilter params var params = { Filter: { IpFilter: { Cidr: "IP_ADDRESS_OR_RANGE", Policy: "Allow" | "Block", }, Name: "NAME", }, }; // Create the promise and SES service object var sendPromise = new AWS.SES({ apiVersion: "2010-12-01" }) .createReceiptFilter(params) .promise(); // Handle promise's fulfilled/rejected states sendPromise .then(function (data) { console.log(data); }) .catch(function (err) { console.error(err, err.stack); });
若要執行範例,請在命令列中輸入以下內容。該過濾器是在 Amazon SES 中創建的。
node ses_createreceiptfilter.js
您可以在這裡
列出您的 IP 地址篩選條件
在此範例中,使用 Node.js 模組以搭配 Amazon SES 傳送電子郵件。以檔名 ses_listreceiptfilters.js
建立一個 Node.js 模組。依前述內容設定軟體開發套件。
建立一個空參數物件。若要呼叫 listReceiptFilters
方法,請建立叫用 Amazon SES 服務物件的 promise 來傳遞參數。然後,在 promise 回呼中處理 response
。
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the promise and SES service object var sendPromise = new AWS.SES({ apiVersion: "2010-12-01" }) .listReceiptFilters({}) .promise(); // Handle promise's fulfilled/rejected states sendPromise .then(function (data) { console.log(data.Filters); }) .catch(function (err) { console.error(err, err.stack); });
若要執行範例,請在命令列中輸入以下內容。Amazon SES 返回過濾器列表。
node ses_listreceiptfilters.js
您可以在這裡
刪除 IP 地址篩選條件
在此範例中,使用 Node.js 模組以搭配 Amazon SES 傳送電子郵件。以檔名 ses_deletereceiptfilter.js
建立一個 Node.js 模組。依前述內容設定軟體開發套件。
建立物件以傳遞要刪除的 IP 篩選條件名稱。若要呼叫 deleteReceiptFilter
方法,請建立叫用 Amazon SES 服務物件的 promise 來傳遞參數。然後,在 promise 回呼中處理 response
。
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set the region AWS.config.update({ region: "REGION" }); // Create the promise and SES service object var sendPromise = new AWS.SES({ apiVersion: "2010-12-01" }) .deleteReceiptFilter({ FilterName: "NAME" }) .promise(); // Handle promise's fulfilled/rejected states sendPromise .then(function (data) { console.log("IP Filter deleted"); }) .catch(function (err) { console.error(err, err.stack); });
若要執行範例,請在命令列中輸入以下內容。該過濾器從 Amazon SES 中刪除。
node ses_deletereceiptfilter.js
您可以在這裡