Amazon SNS 消息发布
在创建 Amazon SNS 主题并为终端节点订阅主题后,可以将消息发布到主题。发布消息时,Amazon SNS 会尝试将消息传输给订阅的终端节点。
主题
要使用 Amazon Web Services Management Console 将消息发布到 Amazon SNS 主题
登录 Amazon SNS 控制台
。 -
在左侧导航窗格中,选择主题。
-
在 Topics(主题)页上,选择一个主题,然后选择Publish message(发布主题)。
控制台将打开 Publish message to topic(将消息发布到主题)页面。
-
在 Message details(消息详细信息)部分中,执行以下操作:
-
(可选)输入消息 Subject(主题)。
-
对于 FIFO topic(FIFO 主题),输入 Message group ID(消息组 ID)。同一消息组中的消息按消息的发布顺序传输。
-
对于 FIFO 主题,请输入 Message deduplication ID(消息重复数据删除 ID)。如果您为主题启用了 Content-based message deduplication(基于内容的消息重复数据删除)设置,则此 ID 为可选项。
-
(可选)对于 mobile push notifications(移动推送通知),输入 Time to Live (TTL)(存活时间 (TTL))值(以秒为单位)。这是推送通知服务(如 Apple Push Notification Service (APNs) 或 Firebase Cloud Messaging (FCM))必须将消息传送至终端节点的时间。
-
-
在 Message body (消息正文) 部分中,执行以下操作之一:
-
选择 Identical payload for all delivery protocols(完全相同负载用于所有交付协议),然后输入消息。
-
选择 Custom payload for each delivery protocol(对每个交付协议使用自定义负载),然后输入 JSON 对象定义要发送给每个协议的消息。
有关更多信息,请参阅使用特定于平台的负载发布。
-
-
在 Message attributes(消息属性)部分中,添加您希望 Amazon SNS 与订阅属性
FilterPolicy
相匹配的任何属性,以确定订阅的终端节点是否对发布的消息感兴趣。-
对于 Type(类型),选择属性类型,例如 String.Array。
注意 对于属性类型 String.Array,请将该数组放入方括号 (
[]
) 内。在该数组内,将字符串值加入双引号内。数字以及关键字true
、false
和null
无需加引号。 -
输入属性名称,例如
customer_interests
。 -
输入属性值,例如
["soccer", "rugby", "hockey"]
。
如果属性类型是 String、String.Array 或 Number,Amazon SNS 会首先依据订阅的筛选策略(如果存在)来评估该消息属性,然后再将消息发送至该订阅。
有关更多信息,请参阅Amazon SNS 消息属性。
-
-
选择发布消息。
消息将发布到主题,且控制台将打开主题的 Details(详细信息)页面。
使用 Amazon SDK 将消息发布到主题
要使用 Amazon 开发工具包,您必须使用您的凭证对其进行配置。有关更多信息,请参阅 Amazon 开发工具包和工具参考指南中的共享配置和凭证文件。
以下代码示例显示如何将消息发布到 Amazon SNS 主题。