开始使用免费开始使用

批量删除订阅

如今 Sam 的通知系统日趋成熟,她发现自己发送的提醒类型并不适合短信。

如果用户能立刻响应,SMS 提醒很有用;但"我们落后 500 个坑洞修补"并不是市议员能马上解决的事。

她决定从 streets_critical 主题中移除所有 SMS 订阅者,但保留所有电子邮件订阅。

她已将 boto3 的 SNS 客户端创建在变量 sns 中,streets_critical 主题的 ARN 存在变量 str_critical_arn 中。

在本练习中,您将帮助 Sam 移除所有 SMS 订阅者,把它改造成仅通过电子邮件提醒的系统。

本练习是课程的一部分

Python 中的 AWS Boto 入门

查看课程

练习说明

  • 列出 'streets_critical' 主题的订阅。
  • 遍历每个订阅,若协议为 'sms',则退订。
  • 用一行代码再次列出 'streets_critical' 主题的订阅。
  • 打印这些订阅

交互式实操练习

通过完成这段示例代码来试试这个练习。

# List subscriptions for streets_critical topic.
response = sns.____(
  ____ = str_critical_arn)

# For each subscription, if the protocol is SMS, unsubscribe
for sub in response['____']:
  if sub['Protocol'] == 'sms':
	  sns.____(____=sub['SubscriptionArn'])

# List subscriptions for streets_critical topic in one line
subs = sns.list_subscriptions_by_topic(
  ____=str_critical_arn)['____']

# Print the subscriptions
print(subs)
编辑并运行代码