帮助我们改进Amazon SDK for JavaScript版本 3 (V3) 文档,方法是使用反馈链接,或者在上创建议题或拉取请求GitHub
这些区域有:Amazon SDK for JavaScriptV3 API 参考指南详细描述了Amazon SDK for JavaScript版本 3 (V3)。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Amazon SNS 中发布消息
此 Node.js 代码示例演示:
-
如何将消息发布到 Amazon SNS 主题。
情景
在本示例中,您使用一系列 Node.js 模块,将来自 Amazon SNS 的消息发布到主题终端节点、电子邮件或电话号码。Node.js 模块使用 JavaScript 开发工具包,通过SNS
客户端类:
先决条件任务
要设置和运行此示例,您必须先完成以下任务:
-
设置项目环境以运行这些 Node TypeScript 示例,然后安装所需的Amazon SDK for JavaScript和第三方模块。按照上的说明操作GitHub
. -
使用用户凭证创建共享配置文件。有关提供凭证 JSON 文件的更多信息,请参阅从共享凭证文件加载 Node.js 中的凭证。
这些示例演示了如何使用 ECMASCRIPT6 (ES6) 导入/导出客户端服务对象和命令。
这需要 Node.js 版本 13.x 或更高版本。要下载并安装最新版本的 Node.js,请参阅。Node.js 下载内容:。
. 如果您希望使用 CommonJS 语法,请参阅。JavaScript ES6/常用JS 语法.
将消息发布到 SNS 主题
在本示例中,使用 Node.js 模块将消息发布到 Amazon SNS 主题。
创建libs
创建文件名为的 Node.js 模块。snsClient.js
. 将以下代码复制并粘贴到其中,这将创建 Amazon SNS 客户端对象。Replace领域
与您的Amazon区域。
import { SNSClient } from "@aws-sdk/client-sns"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create SNS service object. const snsClient = new SNSClient({ region: REGION }); export { snsClient };
可以找到这个示例代码GitHub 上的这里
创建文件名为 sns_publishtotopic.js
的 Node.js 模块。按前面所示配置开发工具包。
创建包含用于发布消息的参数的对象,包括消息文本以及 Amazon snStopic 的 Amazon 资源名称 (ARN)。有关可用 SMS 属性的详细信息,请参阅SetSMSAttributes。
将参数传递到PublishCommand
的方法SNS
客户端类。创建一个异步函数,调用 Amazon SNS 客户端服务对象并传递参数对象。
ReplaceMESSAGE_TEXT
用消息文本进行操作,TOPIC_ARN
使用 SNS 主题的 ARN。
// Import required AWS SDK clients and commands for Node.js import {PublishCommand } from "@aws-sdk/client-sns"; import {snsClient } from "./libs/snsClient.js"; // Set the parameters var params = { Message: "MESSAGE_TEXT", // MESSAGE_TEXT TopicArn: "TOPIC_ARN", //TOPIC_ARN }; const run = async () => { try { const data = await snsClient.send(new PublishCommand(params)); console.log("Success.", data); return data; // For unit tests. } catch (err) { console.log("Error", err.stack); } }; run();
要运行示例,请在命令提示符下输入以下内容。
node sns_publishtotopic.js
可以找到这个示例代码GitHub 上的这里